Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

ouverture et import de feuille par usf

  • Initiateur de la discussion Initiateur de la discussion kwakos
  • 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 !

kwakos

XLDnaute Occasionnel
Bonjour a tous

J'ai un useform qui doit me permettre via son bouton d'importer la feuille 1 d'un autre classeur excel...
J'ai tapé ce code mais bien sur ca bug (arf il est temps que je m'améliore... ca vient ca vient..)

Private Sub CommandButton1_Click()
'recherche du classeur
Dim chemin As String
chemin = Application.GetOpenFilename
Workbooks.Open Filename:=chem
'appel de la feuil1
Set source = Workbooks.Open(chem)
source.Worsheets(1).Range("A1").Copy (ThisWorkbook.Worksheets("Feuil1").Range("a2"))
source.Close False
End Sub

quelqu'un aurait une solution ??

Merci a tous
 
Re : ouverture et import de feuille par usf

Hello,

Essaye comme ceci, mais sans garantie pour le reste.
Code:
Private Sub CommandButton1_Click()
'recherche du classeur
Dim [COLOR="red"][B]chem[/B][/COLOR] As String
[COLOR="red"][B]chem= Application.GetOpenFilename("Classeurs Excel,*.xls")[/B][/COLOR] 
Workbooks.Open Filename:=chem
'appel de la feuil1
Set source = Workbooks.Open(chem)
source.Worsheets(1).Range("A1").Copy (ThisWorkbook.Worksheets("Feuil1").Range("a2"))
source.Close False
End Sub
Cdt, Hulk.
 
Dernière édition:
Re : ouverture et import de feuille par usf

Re,

Ai trouvé ce code, un peu modifié, et apparemment ça joue, vois ce que tu peux en faire...
Code:
Private Sub CommandButton1_Click()

    Unload Me
    chem = Application.GetOpenFilename
    classeur_chem = ActiveWorkbook.Name
    Workbooks.Open chem, 0, ReadOnly:=False
    Monclasseur = ActiveWorkbook.Name
    Workbooks(Monclasseur).Sheets("Feuil1").Copy Before:=Workbooks(classeur_chem).Sheets("Feuil1")

End Sub
Cdt, Hulk.
 
Re : ouverture et import de feuille par usf

Re forum, Hulk,

Hulk merci pour tes suggestions, mais aucune de ces solutions ne marche, cela bloc à chaque fois sur la meme ligne

Workbooks(Monclasseur).Sheets("Feuil1").Copy Before:=Workbooks(classeur_chem).Sheets("Feuil1")

je ne sais pas pourquoi, je m'y re-plong,
si Hulk tu as une autre idée (ou quelqu'un d'autre) je suis preneur

A+ et encore merci
 
Re : ouverture et import de feuille par usf

Re le forum, Hulk

Hulk, merci pour tes suggestions mais aucune ne marche, cela bug toujours au même endroit :

Workbooks(Monclasseur).Sheets("Feuil1").Copy Before:=Workbooks(classeur_chem).Sheets("Feuil1")

Je ne comprends pas pourquoi, je vais étudier cela encore.
Si Hulk ou quelqu'un d'autre a une idée, je suis preneur...

Merci encore Hulk
Merci à ceux qui vont nous rejoindre dans cette quête 😀

A +
 
Re : ouverture et import de feuille par usf

Hello,

Je crois savoir pourquoi...

La feuille depuis où tu lances la macro, doit se nommer excactement comme la feuille que tu vas chercher !

Tu travailles sur la feuille "Toto", la feuille que tu vas chercher doit se nommer "Toto" !

D'où
Code:
Workbooks(Monclasseur).Sheets("[B]Nom de ta feuille[/B]").Copy Before:=Workbooks(classeur_chem).Sheets("[B]Nom de ta feuille[/B]")
Cdt, Hulk.
 
Re : ouverture et import de feuille par usf

Bonsoir,
Code:
Private Sub CommandButton1_Click()
Dim FichDest As String, FichDep as string, Chem As Variant
On Error Resume Next
    FichDest = ActiveWorkbook.Name
    Chem = Application.GetOpenFilename
    If Chem = False Then Exit Sub
    Workbooks.Open Chem
    FichDep = ActiveWorkbook.Name
    Sheets("Gloubiboulga").Copy Before:=Workbooks(FichDest).Sheets("Tartampion")
    Workbooks(FichDep).Close False
    
End Sub

Edit : Salut Robert, non ...Ledzep
Re Edit : Mille excuses, je te salue l'Homme Vert
Re re edit : Du coup je complète le code (genre si tu appuies sur annuler)
A+
kjin
 
Dernière édition:
Re : ouverture et import de feuille par usf

Re le forum

Hulk, ledzepfred et kjin bonjour et merci à vous...

J'ai suivi vos conseils et adapté mon code en passant par l'identification du classeur que j'ouvre (oui le problème étant que le classeur que j'importe n'est pas toujours le même). Donc j'ai créer une nouvelle feuille (4) dans laquelle je rentre le nom du classeur que j'ouvre pour le faire ré intervenir un peu + tard dans mon code. Cela donne :

Dim Chem As String
aaa = Workbooks("monclasseur.xls").Sheets(4).Cells(1, 1).Value
Chem = Application.GetOpenFilename
On Error Resume Next
Workbooks.Open Filename:=Chem
Range("A1:AZ1000").Select
aaa = ActiveWorkbook.Name
Selection.Copy
Windows("monclasseur.xls").Activate
Range("A2").Select
ActiveSheet.Paste
Application.DisplayAlerts = False 'sinon me demande manuellement si je veux garder le presse papier
Windows(aaa).Close
Application.DisplayAlerts = True
Unload UserForm1
UserForm1.Hide

Bon et là ça marche. Je vous l'accorde, ça ne doit pas être très propre et y a surement plus efficace 😀 mais bon, faut bien s'y mettre !!! 😉

En tout cas encore merci à tous et à bientôt (oui je n'ai entamé que 25 à 30% de mon projet final avec tout ça... je compte sur vous les copains 😛)

Ciao
 
Re : ouverture et import de feuille par usf

Bonjour,
J'ai suivi vos conseils et adapté mon code...
Mouais...😡
Et le code fourni, il sent le gaz oil ? 🙄
A quoi ca sert de mettre le nom du classeur dans une cellule pour l'ouvrir ensuite avec la boite de dialogue 😕
Il me semblait qu'en outre, il fallait copier une feuille d'un classeur dans l'autre !
A bon entendeur
kjin
 
Re : ouverture et import de feuille par usf


re,
kjin, il me semble que ton code faisait intervenir des noms de feuilles aussi :
Sheets("Gloubiboulga").Copy Before:=Workbooks(FichDest).Sheets("Tartampion")
que je ne connais pas d'avance...
Mettre le nom du classeur en cellule me permet de l'identifier + tard et donc d'intervenir sur celui-ci + facilement...
Enfin, mes remerciements ne sont pas uniquement destinés à ceux qui me "pondent" une formule toute faite dans les bras, mais aussi à ceux qui me suggèrent des choses et qui me guident vers la bonne voie, c'est pour cela que Hulk, ledzepfred et kjin je vous ai remercié...

Merci encore d'ailleurs et désolé si vous vous êtes senti vexé du fait que votre code ne fonctionnait pas dans mon cas, ceci n'étant certainement pas l'effet désiré...

J'espère kjin que tu auras compris mes bonnes intentions
A+ et merci encore
 
- 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

  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
465
A
  • Résolu(e)
Réponses
4
Affichages
893
A
Réponses
14
Affichages
1 K
Arnaud59000
A
S
Réponses
13
Affichages
2 K
sanae_J
S
A
Réponses
3
Affichages
1 K
Arnaud59000
A
L
Réponses
11
Affichages
2 K
L
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…