Vba:Copier feuil entre classeurs differents
Résolu/Fermé
CHARLYJACK
Messages postés
353
Date d'inscription
mardi 19 octobre 2010
Statut
Membre
Dernière intervention
16 mai 2023
-
20 sept. 2012 à 20:46
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 24 sept. 2012 à 23:03
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 24 sept. 2012 à 23:03
A voir également:
- Vba:Copier feuil entre classeurs differents
- Incompatibilité de type vba ✓ - Forum Programmation
- Vba attendre 1 seconde ✓ - Forum VB / VBA
- Vba dernière colonne non vide ✓ - Forum VB / VBA
- Vba récupérer valeur cellule ✓ - Forum VB / VBA
- Mkdir vba ✓ - Forum VB / VBA
1 réponse
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 775
21 sept. 2012 à 00:18
21 sept. 2012 à 00:18
Bonjour,
Je ne l'ai pas essayé, mais ce code devrait convenir:
Je ne l'ai pas essayé, mais ce code devrait convenir:
Sub Recapsynthese() Dim wbkSource As Workbook Dim wshSource As Worksheet Dim wshCible As Worksheet Set wshCible = ActiveSheet wshCible.Cells.Delete 'Titre Colonne wshCible.Range("A1") = "Société juridique" wshCible.Range("B1") = "Société de Gestion" wshCible.Range("C1") = "Fournisseur" 'Mise en forme wshCible.Range("A1:C1").Interior.Color = 13434879 wshCible.Range("A1:C1").Font.Bold = True 'Ouvrir Classeur 1 DebutNomFichier = wshCible.UsedRange.Rows.Count Set wbkSource = Workbooks.Open("O:\DD\PILOT BUDGETAIRE\PILOT FACT\2012\FLUX FIN\COMMANDE 2012\COMMANDE FLUX FIN 2012.XLS") Set wshSource = wbkSource.Worksheets(1) DerniereLigne = wshSource.UsedRange.Rows.Count wshSource.Range("A18:AC" & DerniereLigne).Copy wshCible.Range("B" & wshCible.UsedRange.Rows.Count + 1) wshCible.Range("A" & DebutNomFichier & ":A" & wshCible.UsedRange.Rows.Count) = ("FLUX FIN") wshSource.Close 'Ouvrir Classeur 2 DebutNomFichier = wshCible.UsedRange.Rows.Count Set wbkSource = Workbooks.Open("O:\DDOP\PILOTAGE BUDGETAIRE\PILOTAGE FACTURATION\2012\FLUX FINANCIERS\COMMANDE 2012\COMMANDE SUPPORT 2012.XLS") Set wshSource = wbkSource.Worksheets(1) DerniereLigne = wshSource.UsedRange.Rows.Count wshSource.Range("A18:AC" & DerniereLigne).Copy wshCible.Range("B" & wshCible.UsedRange.Rows.Count + 1) wshCible.Range("A" & DebutNomFichier & ":A" & wshCible.UsedRange.Rows.Count) = ("SUPPORT ") wshSource.Close End Sub
21 sept. 2012 à 20:49
j'ai essayé ce matin et malheureusement ça bloque.
J'ai un message d'erreur du type "Membre ... chemin introuvable" et le curseur se positionne sur la ligne wshSource.Close.
J'ai vérifié l'orthographe des chemins rien à faire !
Et je dois avoué que j'ai du mal à comprendre ton code (et oui je balbutie en vba !)
Cdt
Charlyjack
21 sept. 2012 à 22:03
remplace les 2 fois :
wshSource.Close
par
wbkSource.Close
24 sept. 2012 à 21:53
Cdt
Charlyjack
24 sept. 2012 à 23:03
Cordialement
Patrice