ouvrir un fichier excel depuis un autre fichier avec VBA

  • Initiateur de la discussion Initiateur de la discussion raveno39
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

raveno39

XLDnaute Nouveau
Bonjour,
j'ai créé un fichier moteur recherche 3 et un fichier agenda
dans le fichier moteur recherche j'ai créé un formulaire ajout de contact qui rempli une feuille donnée c'est ce qui suit:

Private Sub CmdAjouter_Click()
Dim numLigneVide As Integer
'On active la feuille donnée
Worksheets("Donnée").Activate
'On trouve la dernier ligne vide du tableau et on enregistre le numero de la ligne dans la variable numLigneVide
numLigneVide = ActiveSheet.Columns(1).Find("").Row
'On vérifie que les champs obligatoire sont correctement remplis
If TxtNom.Text = "" Then
MsgBox "Veuillez remplir le nom de votre contact", vbCritical, "Champs manquants"
TxtNom.SetFocus


maintenant j'ai fait un copier coller du bouton ajout contact dans mon fichier agenda et la ça c'est compliqué j'ai essayé plusieurs chose vu sur le forum, je n'arrive pas à enregistrer mon nouveau contact dans mon classeur moteur recherche
j'ai essayé en ajoutant une ligne Workboot...activate et une du style Dim..
je pense qu'i faut mettre quelque chose avant "On active feuille donnée" mais quoi ? là est le mystere pour moi

Si quelqu'un pouvait m'aider à résoudre ce petit problème

Un grand merci
 
Re : ouvrir un fichier excel depuis un autre fichier avec VBA

Bonsoir raveno39, le forum,
Difficile de te répondre sans un exemple simplifié (avis personnel). En effet, tu indiques 2 fichiers, et ton code mentionne une feuille « Donnée ». Ton code n’est pas complet (IF sans End If). Tu testes uniquement le nom du contrat, mais pas les autres champs.
Cordialement,
Bernard
 
Re : ouvrir un fichier excel depuis un autre fichier avec VBA

je pense que je me suis mal expliqué dans mon titre
dans mon fichier moteur recherche deux feuille
1 feuille de donnée (qui est une base de donnée)
1 feuille resultat avec un bouton ouvrant formulaire de recherche et qui affiche les lignes correspondante de la feuille donnée
et un bouton ouvrant un formulaire pour ajouter un contact dans la base de donnée

ensuite j'ai un autre fichier un agenda excel que j'ai fait moi même
là une seule feuille ou j'ai fait un coller du bouton ajout contact
ma question est:
a partir de ce deuxieme bouton(ajout contact) je veux pouvoir enregistrer mon contact dans le premier fichier

voilà le code en entier du bouton ajout contact que j'ai copier et coller
Private Sub CmdAjouter_Click()
Dim numLigneVide As Integer
'On active la feuille liste
Worksheets("Donnée").Activate
'On trouve la dernier ligne vide du tableau et on enregistre le numero de la ligne dans la variable numLigneVide
numLigneVide = ActiveSheet.Columns(1).Find("").Row
'On vérifie que les champs obligatoire sont correctement remplis
If TxtNom.Text = "" Then
MsgBox "Veuillez remplir le nom de votre contact", vbCritical, "Champs manquants"
TxtNom.SetFocus

ElseIf TxtSpecialite.Text = "" Then
MsgBox "Veuillez remplir la Specialite de votre contact", vbCritical, "Champs manquants"
TxtSpecialite.SetFocus
Else
'On remplit les données dans notre tableau
ActiveSheet.Cells(numLigneVide, 2) = UCase(TxtNom.Text)
ActiveSheet.Cells(numLigneVide, 3) = TxtPrenom.Text
ActiveSheet.Cells(numLigneVide, 4) = TxtAdresse.Text
ActiveSheet.Cells(numLigneVide, 5) = TxtCp.Text
ActiveSheet.Cells(numLigneVide, 6) = UCase(TxtVille.Text)
ActiveSheet.Cells(numLigneVide, 8) = TxtTel.Text
ActiveSheet.Cells(numLigneVide, 9) = TxtTel2.Text
ActiveSheet.Cells(numLigneVide, 10) = TxtTel3.Text
ActiveSheet.Cells(numLigneVide, 1) = TxtSpecialite.Text
ActiveSheet.Cells(numLigneVide, 11) = TxtFax.Text
'On efface le formulaire et on replace le curseur sur le premier champ ( Nom)
TxtNom.Text = ""
TxtPrenom.Text = ""
TxtAdresse.Text = ""
TxtCp.Text = ""
TxtVille.Text = ""
TxtTel.Text = ""
TxtTel2.Text = ""
TxtTel3.Text = ""
TxtSpecialite.Text = ""
TxtFax.Text = ""
TxtNom.SetFocus

End If

End Sub


et voila le message que j'ai

erreurd'exécution 9
l'indice n'appartient pas à la selection


j'espere m'etre mieux expliquer🙁
 
Re : ouvrir un fichier excel depuis un autre fichier avec VBA

bonjour Raveno39 le forum
bon alors tes liens tu devrais les essayer !!! ils ne marchent pas, de plus pourquoi ne pas joindre les fichiers directement sur le forum?
oui j'avais oublié pourquoi faire simple quand on peut faire compliqué.
a+
Papou😱
 
Re : ouvrir un fichier excel depuis un autre fichier avec VBA

Bonjour raveno39, le forum,
Pour joindre un fichier, tu cliques sur « Aller en mode avancé » au pied d’un message, puis sur « Gérer les pièces jointes », et « Choisissez un fichier ».
Après sélection du fichier, cliques sur « Ouvrir », puis « Envoyer » .
Pour le deuxième fichier, reprendre à partir de « Choisissez un fichier », et enfin « Fermer cette fenêtre ».
Les noms des fichiers doivent apparaître en « Pièces jointes ».
Cordialement,
Bernard
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour