Ouvrir un fichier et copier des données

Bonjour,

je rencontre un problème d'ouverture de classeur également.

Je souhaite créer un bouton "VALIDER" qui :

1- ouvre un fichier excel existant

2- copie les données demandées

voici ce que j'ai écrit mai j'ai un message d'erreur, je pense que je dois ajouter une liaison.

Je suis nouvelle et je ne connais pas bien le langage VBA.

Merci d'avance pour vos réponses.

validation

Bonjour MARGUEAPR,

Y-a-t'il bien un un onglet portant le nom "Feuil4" dans le fichier excel que tu ouvres ?

Bonjour Ginga999,

Non, la feuil4 c'est la feuille où se trouve les lignes qui doivent être copiées et coller dans le document "RÉCAPITULATIF HEURES PAR AFFAIRE"

Je sais pas trop si c'est claire ce que j'écris...

Et bien le problème vient de là dans ce cas.

Lors de l'ouverture d'un classeur excel, celui-ci devient le classeur actif, ce qui signifie que lorsque tu demandes de sélectionner Sheets("Feuil4") excel cherche cet onglet dans le nouveau classeur que tu viens d'ouvrir.

Quand tu fais un Workbooks.Open et que tu souhaites garder ton classeur d'origine actif (celui ayant le code vba), tu dois rentrer ThisWorkbook.Activate avant toute opération faisant référence à un onglet etc...

Dans ton cas pour faire synthétique :

Set wbExcel = Worbokks.Open....

ThisWorkbook.Activate

Sheets("Feuil4")Select

ThisWorkbook représentant le classeur ayant le code VBA.

Bien cordialement

Merci beaucoup cela fonctionne parfaitement.

Le seul souci c'est que mes listes déroulant disparaissent quand j'ouvre mon fichier excel, et je suis de nouveau obligé de les créer, j'ai lu qu'il fallait enregistrer les feuilles excel au format .xlsm, est ce la solution?

Je ne pense pas qu'il y ait besoin de changer le format du fichier.

Les menus déroulants disparaissent du fichier que tu ouvres avec Workbooks.Open c'est çà ?

Et si tu l'ouvres normalement ils apparaissent toujours ?

Dernière question, as-tu besoin des menus-déroulants dans ton programme ?

Oui j'ai besoin d'une liste bien définit pour que les utilisateurs ne créent pas de nouveau client, sans le contrat de l'administrateur.

Mes menus déroulant fonctionnent de nouveau... à ne rien comprendre.

Toujours concernant la copie de mes données j'aimerai que la macro est les fonctions suivantes:

1- ouvrir un classeur existant (ok)

2- copie des données lignes A2:I2 du workbooks.open (ok)

3- colle les données sur le classeur (ok)

4- efface les données du woorkbooks.open (ok)

Maintenant je voudrai rajouter à l'étape 2 "sélection des cellules non vides" + copie des données lignes A2:I2 du workbooks.open

j'ai trouvé ceci mais je n'arrive pas à transposer sur mon cas

Code :

Dim cellule As Range

For Each cellule In Range("A1:A20")

If cellule <> "" Then

Range(Cells(cellule.Row, 1), Cells(cellule.Row, 26)).Copy

' et indiquer l'endroit où seront collées les cellules

'

'

End If

Next cellule

Merci d'avance pour vos aides.

margue

validation
Rechercher des sujets similaires à "ouvrir fichier copier donnees"