Enregistrement de cellules d'un classeur

C

cactusx

Guest
Bonjour à tous,

Quelqu'un a t-il une solution à me proposer pour ce problème qui n'en n'est peut être pas un pour celui qui maitrise VBA :

Dans Help.xls, la feuille 1 contient 3 informations stockées en B1, B2 et B3.
La feuille2 contient en A1 la concaténation des 3 cellules précédentes.
Je cherche à pouvoir enregistrer uniquement les cellules A1 et B1 de la feuille 2 dans un nouveau classeur qui portera le nom du contenu de A1 de la feuille 2 en "c:\mes documents" en cliquant sur un bouton à créer en A3 de la feuille 2.

Merci par avance.

P.S. le fichier contenant mon exemple
 

Pièces jointes

  • Help.zip
    2.3 KB · Affichages: 10
  • Help.zip
    2.3 KB · Affichages: 13
  • Help.zip
    2.3 KB · Affichages: 11
@

@+Thierry

Guest
Salut Cactusx, le Forum

Pas très claire ton histoire !! lol !

Tu ne veux sauver que deux cellules dans un nouveau classeur à chaque fois ??? çà me parait une peu beaucoup de classeurs pour deux cellules seulement... non ? Ou bien quelque chose m'échappe dans tes explications.

Enfin le client est roi !! lol

Voici un code qui fera ceci, il te suffit de le coller dans un Module Standard (ALT + F11, pour aller dans VBE, puis Menu / Insertion / Module)

Sub CopieSauvegarFeuille()
Dim Chemin As String
Dim NomFile As String

NomFile = Sheets("Feuil2").Range("A1")
If NomFile = "" Then Exit Sub
Chemin = "c:\Mes Documents\"
NomFile = Chemin & NomFile & ".xls"

Worksheets("Feuil2").Copy
With ActiveWorkbook
.SaveAs NomFile
.Close 0
End With
MsgBox "Votre fichier a bien été sauvé sous ce Chemin : " & _
vbCrLf & NomFile, vbInformation, "Fichier Sauvegardé"
End Sub

Quand au bouton, je pense qu'il ne faut pas le créer en feuil2 car sinon il sera aussi recopié dans la feuille ainsi sauver mais il vaut mieux créer un feuille "Interface" qui pourra avoir une formule =Feuil2!A1 et ce fameux bouton...

Pour créer un Bouton, Menu / Affichage / Barre d'Outils / Boite à Outils Contrôles => Choisir le Bouton ...

Dessiner le Bouton, Double cliquer dessus, un Private Module va apparaitre avec ceci :
Private Sub CommandButton1_Click()

End Sub

Il suffit de taper cette instruction :

Private Sub CommandButton1_Click()
CopieSauvegarFeuille
End Sub

Ensuite revenir dans Excel et dans la Boite à Outils Contrôles, cliquer sur le premier bouton "desactiver le mode création" (petite équerre bleue sur une règle avec un crayon) pour tester le bouton et la macro...

Voilà Cactusx Welcome to XLD ! et dans le Monde du VBA

Bonne fin de Journée
@+Thierry
 
C

cactusx

Guest
Merci Thierry et bonsoir tout le monde.

Ca fonctionne.

Mon application est plus complexe que mon exemple. En minimisant ce dernier cela me permet d'obtenir une réponse simple et claire ce que tu as parfaitement fait.
Mon appli. permet à partir d'une feuille 1 de saisir différentes infos en vue de la réalisation d'un devis à partir de menus déroulants. La base produit est en feuille 2.
Il me faut recomposer ensuite une synthèse de la feuille 1 pour pouvoir l'expédier par e-mail et enregistrer le résultat dans un classeur par client.

Pour le bouton, je me débrouille en inserrant une image puis en lui affectant une macro. Méthode simple et efficace pour débutant.
Mais cela ne m'empèchera pas d'essayer ce que tu m'a proposé pour le bouton.

Encore merci et Bonne soirée.
 

Discussions similaires

Statistiques des forums

Discussions
314 097
Messages
2 105 838
Membres
109 443
dernier inscrit
gr42