problème de syntaxe en VBA pour selectionner un classeur

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
 

Jacques87

XLDnaute Accro
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
 

Bebere

XLDnaute Barbatruc
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
 

spod

XLDnaute Nouveau
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
 

lapix

XLDnaute Occasionnel
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.
 

lapix

XLDnaute Occasionnel
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 ?
 

spod

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

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

  • test.xls
    30 KB · Affichages: 75
  • test.xls
    30 KB · Affichages: 76
  • test.xls
    30 KB · Affichages: 78

lapix

XLDnaute Occasionnel
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

  • testttttt.xls
    30.5 KB · Affichages: 77
Dernière édition:

pierrejean

XLDnaute Barbatruc
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
 

Discussions similaires

Statistiques des forums

Discussions
312 495
Messages
2 088 966
Membres
103 993
dernier inscrit
Essens