Copier coller dans excel avec VB

sanpexos Messages postés 49 Date d'inscription mercredi 6 février 2002 Statut Membre Dernière intervention 5 juillet 2005 - 10 avril 2002 à 13:42
ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009 - 17 juin 2005 à 14:36
Bojour tout le monde

J'aimerais savoir comment on peut Copier coller dans excel à partir de VB .

Merci

4 réponses

XPits Messages postés 1 Date d'inscription jeudi 31 janvier 2002 Statut Membre Dernière intervention 4 mars 2009
11 avril 2002 à 10:28
Salut,
Pour copier ou couper voici trois fonctions:
1. Pour sélectionner les cellules à copier ou couper
2. Pour copierOuCouper leur contenue
3. Pour coller le contenu du presse-papier

------------------
1. Sélectionner
------------------
Public Function gl_PlageSelectionner(ByVal PI_ligDeb As Long, _
ByVal PI_colDeb As Long, _
ByVal PI_ligfin As Long, _
ByVal PI_colFin As Long) As Long
'-----------------------------------------------------
' Selectionne la plage de cellules spécifiée.
' ----------------------------------------------------
On Error GoTo gfPlageSelectionnerErr
gl_PlageSelectionner = 0
ActiveWorkbook.ActiveSheet.Range(Cells(PI_ligDeb, PI_colDeb), _
Cells(PI_ligfin, PI_colFin)).Select
Exit Function

gfPlageSelectionnerErr:
With gtyErreur
.Number = Err.Number
.Line = Erl
.desc = "gl_PlageSelectionner :" & Err.Description
.src = Err.Source
End With
gl_PlageSelectionner = 1
Exit Function
End Function
-----------------------
2. CopierOuCouper
-----------------------
Public Function gl_CopierOuCouper(ByVal PI_BCutCopy As XlCutCopyMode) As Long
' --------------------------------------------------
' Fonction de copie dans le Presse-papier du contenu des cellules
' sélectionnées dans la feuille active.
' ---------------------------------------------------

On Error GoTo gfCopierOuCouperErr
gl_CopierOuCouper = 0
If PI_BCutCopy = xlCopy Then
Selection.Copy
End If
If PI_BCutCopy = xlCut Then
Selection.Cut
End If
Exit Function

gfCopierOuCouperErr:
With gtyErreur
.Number = Err.Number
.Line = Erl
.desc = "gl_CopierOuCouper :" & Err.Description
.src = Err.Source
End With
gl_CopierOuCouper = 1
Exit Function
End Function

------------------
3. Coller
------------------
Public Function gl_Coller() As Long
'------------------------------------------------------
' Fonction de collage du Presse-papier vers Excel dans la feuille active
'-------------------------------------------------------
On Error GoTo gfCollerErr
gl_Coller = 0
ActiveSheet.Paste
Exit Function

gfCollerErr:
With gtyErreur
.Number = Err.Number
.Line = Erl
.desc = "gl_Coller :" & Err.Description
.src = Err.Source
End With
gl_Coller = 1
Exit Function
End Function

En espérant que cela te convienne.

A plus.

Xavier
0
cap0002004 Messages postés 15 Date d'inscription mardi 13 avril 2004 Statut Membre Dernière intervention 6 août 2004
27 avril 2004 à 16:21
est ce que tu peux me dire comment on fait pour utiliser cette fonction.
merci
0
ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009
8 juin 2005 à 23:05
Dans ton programme VB tu peux mettre ca pour faire du copier coller



Dim x as Excel.application



x.worksheet(1).Range("C13").Copy 'Tu remplace C13 par la cellule et pareil pour D11


x.worksheet(1).Range("D11").Paste
0
ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009
17 juin 2005 à 14:36
PS: Ca c'est les méthodes qui permette de copier/coller

Mais le code de Xavier prévoit les différentes erreur qui peuvent se
produire. Tu recopies ses fonctions et tu les appels dans ton prog VB
là ou c'est nécessaire.

D'ailleur Xavier, saurait t'il si il est possible de supplenter tes
fonctions à celle de Excel. Je génère un fichier Excel par VB et
lorsque l'utilisateur sélectionne, copie coupe et colle, je récupère
l'évènement et je lance tes fonctions?????
0
Rejoignez-nous