Se connecter avec
S'enregistrer | Connectez-vous

Copie d'une cellule dans un autre classeur

Dernière réponse : dans Programmation

bonjour a tous,
Je suis novice en VBA et je cherche a copier une cellule (B8) d'un classeur dans une autre cellule (B3) de plusieurs classeur.
seulement voila le programme que j'ai fait ne marche pas
  1. Sub CopierDonnees()
  2.  
  3. Dim Entree As Workbook, Sortie As Workbook
  4.  
  5. Nomfichierentree = Application.GetOpenFilename("PLAN DE CHARGE vierge (*.xls), *.xsl")
  6. ' On verifie que l'on a selectionné un nom de classeur
  7. If Nomfichierentree <> False Then
  8. ' On ouvre le classeur
  9. Set Entree = Workbooks.Open(PLAN DE CHARGE vierge)
  10.  
  11.  
  12. NomFichierSortie = Application.GetOpenFilename("OE vierge (*.xls), *.xsl")
  13. If NomFichierSortie <> False Then
  14. Set Sortie = Workbooks.Open(OE vierge)
  15.  
  16. ' Ici tu mets la copie de la cellule de la feuille d'entrée vers la feuille de sortie
  17. Sortie.Worksheets("Feuil1").Range ("B3") = Entree.Worksheets("Feuil1").Range ("B8")

si quelqu'un a une idée de mes erreurs ou une meilleur solution à mon problème toute idée est la bienvenue
merçi d'avance

Autres pages sur : copie cellule classeur

Lassé par la pub ? Créez un compte
Expert Programmation

Hum, c'est presque ça !
Allez, avoue, tu l'as eu sur quel autre forum ce bout de code.

Ligne 5, tu te casses la nénette à récupérer le nom du fichier d'entrée. Ben ligne 9 tu t'en sers.

Ligne 12, tu te re-casses la nénette à récupérer le nom du fichier de sortie. Ben ligne 14 tu t'en sers.

[:spamafote]

j'avoue tous n'est pas de moi mais j'ai trouvé beaucoup plus simple comme solution merçi quand meme.
  1. Sub CopierDonnees()
  2. Workbooks("OE VIERGE.xls").Sheets("Feuil1").Range("B3") = Workbooks("PLAN DE CHARGE vierge.xls").Sheets("PLAN DE CHARGE").Range("B8").Value
  3. End sub

a+
Expert Programmation

Bon là, tu mets tout en dur. C'est pas terrible.
Et comme ça :
  1. Option Explicit
  2.  
  3. Sub CopierDonnees()
  4. Dim Entree As Workbook, Sortie As Workbook
  5. Dim Nomfichierentree As String, NomFichierSortie As String
  6.  
  7. Nomfichierentree = Application.GetOpenFilename("PLAN DE CHARGE vierge (*.xls), *.xsl")
  8.  
  9. If Nomfichierentree <> False Then
  10. Set Entree = Workbooks.Open(Nomfichierentree)
  11. NomFichierSortie = Application.GetOpenFilename("OE vierge (*.xls), *.xsl")
  12. If NomFichierSortie <> False Then
  13. Set Sortie = Workbooks.Open(NomFichierSortie)
  14. Sortie.Worksheets("Feuil1").Range ("B3") = Entree.Worksheets("Feuil1").Range ("B8")
  15. End IF
  16. End IF
  17. End Sub
Lassé par la pub ? Créez un compte