Bonjour,

Ne tenez pas compte de ce message, le pb était dans l'adressage absolue.

Bonne journée.

-------- Message original --------
Sujet : Re: [users-fr] Macro - Copier coller le contenu d'une plage de cellule
De : Bernard Mauget <bermau...@free.fr>
Pour : users@fr.openoffice.org
Date : 09/11/2010 15:47
Bonjour,
Il ne s'agit pas de copier le contenu d'une plage de cellule dans mon cas dans une autre feuille.. Il s'agit de convertir rapidement, dans la même feuille, le contenu de données d'une cellule (ou colonne de même type de données) de type Délimité par "/" ,(exemple : 01/10/2010), dans 3 cellules adjacentes comme le fait Excel . exemple : (01/10/2010 ) est converti en : 1ère cellule adjacente "01"; 2ème cellule adjacente "10"; 3ème cellule adjacente "2010", sans utiliser de macro .
Cordialement.
B.Mauget

--------------------------------------------------
From: "DEPREZ Christophe PREF35 SSIT" <christophe.dep...@ille-et-vilaine.gouv.fr>
Sent: Tuesday, November 09, 2010 3:22 PM
To: <users@fr.openoffice.org>
Subject: [users-fr] Macro - Copier coller le contenu d'une plage de cellule

Bonjour à tous,

J'ai la routine suivante :


' --------------------------------------------------------
' Routine permettant de copier une plage de cellules de feuille de calcul vers une autre
'                                DSI
'

Sub CopyRangeDemo()

  Dim oDocument As Object
  Dim Spreadsheet As Object

  Set oDocument = ThisComponent
  Set Spreadsheet = oDocument.Sheets.getByIndex(0)

  REM adresse source (UNO struct)
  Dim mRangeAddress_src as New com.sun.star.table.CellRangeAddress

  REM adresse cible (UNO struct)
  Dim mCellAddress_dest as New com.sun.star.table.CellAddress

  REM 3e feuille "Paiement", D1:D450
  With mRangeAddress_src
      .Sheet=3
      .StartColumn = 2
      .StartRow = 1
      .EndColumn = 2
      .EndRow = 450
  End With
      REM 2eme feuille "Edition", C3
  With mCellAddress_dest
      .Sheet = 2
      .Column = 2
      .Row = 1
  End With

  Spreadsheet.copyRange(mCellAddress_dest, mRangeAddress_src)

End Sub


Le contenu de la plage de cellule de la feuille "Paiement" est le résultat de la formule suivante =SI(RECHERCHEV(A49;$DSI.$A$2:$D$354;1)=A49;RECHERCHEV(A49;$DSI.$A$2:$D$354;3))

Le but est de récupérer la valeur de la formule ci dessus (équivalent à un copier collage spéciale et décocher "formule")

Le résultat du copier coller est =SI(RECHERCHEV(#REF !49;$DSI.$A$2:$D$354;1)=#REF !49;RECHERCHEV(#REF !49;$DSI.$A$2:$D$354;3)) donc #REF !dans la cellule :-(

Un grand merci pour vos lumières

Christophe



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@fr.openoffice.org
For additional commands, e-mail: users-h...@fr.openoffice.org


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@fr.openoffice.org
For additional commands, e-mail: users-h...@fr.openoffice.org



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@fr.openoffice.org
For additional commands, e-mail: users-h...@fr.openoffice.org

Reply via email to