Aide language VBA!
Fermé
yassine_bha
Messages postés
1
Date d'inscription
lundi 8 août 2011
Statut
Membre
Dernière intervention
8 août 2011
-
8 août 2011 à 17:31
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 9 août 2011 à 08:18
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 9 août 2011 à 08:18
Bonjour,
Mes amis je veux connaitre comment copier de cellules d'une feuille exel (entre deux variables) à une autre feuille d'un autre classeur à l'aide de language VBA !!!
Merci d'avance!
Mes amis je veux connaitre comment copier de cellules d'une feuille exel (entre deux variables) à une autre feuille d'un autre classeur à l'aide de language VBA !!!
Merci d'avance!
A voir également:
- Aide language VBA!
- Excel compter cellule couleur sans vba - Guide
- Vba ouvrir un fichier excel avec chemin ✓ - Forum VB / VBA
- Vba attendre 1 seconde ✓ - Forum VB / VBA
- Mkdir vba ✓ - Forum VB / VBA
- Autofill vba ✓ - Forum Excel
1 réponse
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 757
9 août 2011 à 08:18
9 août 2011 à 08:18
Bonjour,
La méthode pour copier est certainement, en VBA, la plus facile. La syntaxe est elle même implicite :
Le tout en une seule ligne de code avec juste un espace entre Copy et la suite.
Il faut bien entendu que vos deux classeurs soient ouverts, sinon ça se complique considérablement...
A titre d'exemple, le code suivant boucle sur les lignes (de 1 à 10) du classeur 1 et si cette ligne contient "Absent" en colonne A alors la macro copie cette ligne et la colle dans le classeur 2 :
La méthode pour copier est certainement, en VBA, la plus facile. La syntaxe est elle même implicite :
Workbook(ClasseurSource.xls).Sheets(FeuilleSource).Range(Source).Copy Workbook(ClasseurDestination.xls)).Sheets(FeuilleDestination).Range(Destination)
Le tout en une seule ligne de code avec juste un espace entre Copy et la suite.
Il faut bien entendu que vos deux classeurs soient ouverts, sinon ça se complique considérablement...
A titre d'exemple, le code suivant boucle sur les lignes (de 1 à 10) du classeur 1 et si cette ligne contient "Absent" en colonne A alors la macro copie cette ligne et la colle dans le classeur 2 :
Sub CopiColleSiAbsent() Dim Lign As Integer For Lign = 1 To 10 'on boucle de la ligne 1 à 10 'Si on trouve Absent en colonne A de la feuille 1 du classeur1 Alors If Workbooks("Classeur1.xls").Sheets("Feuil1").Range("A" & Lign) = "Absent" Then 'On copie la ligne vers le classeur 2, première ligne vide Workbooks("Classeur1.xls").Sheets("Feuil1").Rows(Lign).Copy Workbooks("Classeur2.xls").Sheets("Feuil2").Columns(1).Find("*", , , , xlByColumns, xlPrevious).Offset(1, 0) 'fin du test End If 'Ligne suivante Next Lign End Sub