Utiliser donnee d'un fichier ouvert sous VBA

Résolu
Nicoroth Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   -  
Nicoroth Messages postés 54 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai un ptit probleme de syntax.

En fait j ai besoin d aller chercher des donnes dans un formulaire pour creer une base de donnees.
Ce que j ai fait, c'est creer une inputbox qui m ouvre le fichier; et mon probleme c'est "d'activer" cette page.

mon code c'est:


Private Sub Ajout_Donnes_Click()

donnees = InputBox("Route_du_fichier", "Route")

Shell "explorer.exe " & donnees

Windows(donnees).Activate
Range("A8").Select
Selection.Copy
Windows("Basededonnees.xls").Activate
Range("A2").Select
ActiveSheet.Paste
End Sub

En fait c est au niveau du windows(donnees).activate que j ai un probleme, j arrive pas a trouver la bonne syntax pour utiliser les donnees de la feuille que j ai ouverte (qui selon moi n'a d'ailleurs pas besoin d'etre ouverte;je serai tenté de virer le "Shell")

pour info, la route est du type: W:\\basdedonnees\basededonnees.xls

En esperant etre clair.

Merci

5 réponses

Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Bonjour

Il faut indiquer la feuille où se trouve les données. Si tu as 10 feuilles dans le classeur tu as 10 cellules A1 etc ...

Private Sub Ajout_Donnes_Click()
Dim wkIn As Workbook
Dim wkOut As Workbook

donnees = InputBox("Route_du_fichier", "Route")

Set wkIn = Workbooks(donnees).Open
Set wkOut = Workbooks("Basededonnees.xls")

wkOut.Worksheets(1).Range("A2").Value = wkIn.worksheets(1).Range("A8").Value

Set wkIn = Nothing
Set wkOut = Nothing

End Sub


;o)
0
Nicoroth Messages postés 54 Date d'inscription   Statut Membre Dernière intervention  
 
Je sai pas pourquoi mais il y a un probleme avec le:

Set wkIn = Workbooks(donnees).Open

C'est peut etre a cause de la route que je donne qui est:
W:\LS\Catman\Toma de datos visitas.xls
j ai meme essayer sans le .xls mais rien n'y fait.
Une idée? je continue de chercher de mon cote.

mais sinon, ca m'a l air nikel; l'idee du wkIn et wkOut me parait adequat.

Merci
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour, bonjour Polux..
Quand tu met le chemin en "dur" faut des guillements
Set wkIn = Workbooks("W:\LS\Catman\Toma de datos visitas.xls").Open

A+
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Bonjour lermite,

Il semble que le chemin soit saisi par l'utilisateur. Je suppose que la variable "donnees" est de type String ou Variant.
Il faut regarder si le chemin est correctement tapé. Si le fichier est sur un réseau, s'assurer également des droits d'accès au lecteur "W:\".
Nicoroth peut faire un test en passant le nom du fichier en dur comme tu le prescrit.

A suivre

;o)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Nicoroth Messages postés 54 Date d'inscription   Statut Membre Dernière intervention  
 
Merci a tous.

J ai resolu le probleme en passant par un GetOpenFileName.

Merci a tous
0