problème de syntaxe en VBA pour selectionner un classeur

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

spod

XLDnaute Nouveau
boujour,

je vous sollicite encore pour rêgler un problème de syntaxe.

j'ai 2 classeurs : A et B.
le classeur B est caché.

le classseur A possède un bouton avec une macro permettant de transférer le contenu du classeur B en format TXT.

Or lorsque je lance la macro, j'enregiste le classeurA et non le contenu du classeur B .

ci-joint le debut de du code :

Private Sub CommandButton1_Click()

Dim Chemin, NDF As String
Chemin = ActiveWorkbook.Path & "\"
NDF = Range("'%I'!C2").Value & ".txt"
ActiveWorkbook.SaveAs Filename:=Chemin & NDF, FileFormat:=xlText, _
CreateBackup:=False

End Sub


pourvez vous m'aider à resoudre ce problème?

Cordialement
 
Re : problème de syntaxe en VBA pour selectionner un classeur

Bonjour,

Private Sub CommandButton1_Click()

Dim Chemin, NDF As String
Chemin = ActiveWorkbook.Path & "\"
NDF = Range("'%I'!C2").Value & ".txt"
ActiveWorkbook.SaveAs Filename:=Chemin & NDF, FileFormat:=xlText, _
CreateBackup:=False

End Sub

A première vue, le classeur actif est celui qui contient le bouton, donc le A
Ainsi la ligne :
ActiveWorkbook.SaveAs Filename:=Chemin & NDF, FileFormat:=xlText, _
CreateBackup:=False
Sauvegarde le classeur A et non le B, si je ne me trompe

Enfin, c'est ce que je pense

Bon courage
 
Re : problème de syntaxe en VBA pour selectionner un classeur

bonjour Spod
si tu déclares tes variables comme suit chemin est variant et non string
Dim Chemin, NDF As String
la bonne manière est la suivante
Dim Chemin As String, NDF As String
essaye comme suit
NDF =Sheets("%I").Range("C2").Value & ".txt"
à bientôt
 
Re : problème de syntaxe en VBA pour selectionner un classeur

merci à vous de m'aider

les solutions proposer par bebere sont identique à la première version.

pour une meilleur comprehension de mon problème je vous joint le fichier

explication :

je travail sur la feuille "%I". les données que je veux exporter en Txt sons sur la "feuil3"

or je veux que le boutton reste sur la feuille %I car "feuil3" sera caché au final.

merci
 
Re : problème de syntaxe en VBA pour selectionner un classeur

salut

Essaie de remplacer :

Activeworkbook.save .....
Par
Workbooks(B).save

Activeworkbook, c'est le classeur actif, or comme tu dis que B n'est pas visible, il n'est peut etre pas le classeur actif.
 
Re : problème de syntaxe en VBA pour selectionner un classeur

re salut

J'ai essayé ce code avec 2 classeurs et c'est sans probleme

Private Sub CommandButton1_Click()

Dim Chemin, NDF As String
Chemin = ActiveWorkbook.Path & "\"
NDF = Range("C2").Value & ".txt"
Workbooks("classeur2.xls").SaveAs Filename:=Chemin & NDF, FileFormat:=xlText, CreateBackup:=False

End Sub


Il faut bien separer le SHEETS de RANGE comme dis plus haut
(NDF =Sheets("%I").Range("C2").Value & ".txt")


%I c'est le nom de ta feuille ?
 
Re : problème de syntaxe en VBA pour selectionner un classeur

Juste un petit probleme de sequence

D'abord tu trouve le compteur EDF, ensuite...

Simplement tu ne peux sauvegarder qu'un workbook (classeur en francais). Un worksheet appartient touours a un workbook et ne peut exister seul. Donc tu ne peux pas le sauvegarder en tant que tel. C'est tout

J'ai un peu modifié ton fichier, il est joint.

La sequence est :
deplacement de la feuille dans un autre classeur
enregistrement en txt
fermeture de ce classeur.
(on peut copier la feuille au lieu de la deplacer)


Dis si tu veux qq chose de different ou autrement...;




spod à dit:
j'ai essai de modifier le "Workbooks" par Worksheets... j'ai toujours des problèmes !!!!

je ne comprend pas mon erreur

Cordialement
 

Pièces jointes

Dernière édition:
Re : problème de syntaxe en VBA pour selectionner un classeur

bonsoir spod
salut a tous

tu ne trouves pas d'erreur parceque la seule est l'oubli (signalé) de declarer le chemin en String

et tel quel ton code fonctionne

il y a bien création d'un fichier testttt.txt
 
- 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