ENregistrement automatique

  • Initiateur de la discussion ole
  • Date de début
O

ole

Guest
Bonjour tout le monde,

Je voudrais enregistrer un fichier à l'aide d'une macro et que ca me le place et me le nomme dans le dossier que je veux

Le nom de ce fichier sera le numéro d'offre d'une affaire que j'aurai préalablement inscris dans une case

Est ce possible SVP ??

Merci d'avance
 

ERIC S

XLDnaute Barbatruc
re

fichier = ThisWorkbook.Path & '\\Répertoire de stockage\\Affaire ' & numéro

à remplacer par, si je me réfère aux infos que tu m'as données

fichier = ThisWorkbook.Path & '\\Répertoire de stockage\\' & Range('J1673') & Range('J1674').Value

avec nom du client et numéro d'affaires
__________________________
Dans mon exemple la macro fonctionne si tu changes le n° d'affaire en A2

si tu veux pouvoir écraser ton ancien fichier (risque d'avoir un fichier différent de la proposition faite au client!!!!!!!!!!!)

MsgBox ('le fichier existe déjà - abandon ')
Exit Sub

devient

confirm = msgbox('Le fichier existe déjà - abandonner?',vbyesno)
if confirm = vbyes then exit sub

A+
 
O

Ole

Guest
Ca me met des erreurs !!

Je pense qu’il faut enlever ca ( ou en tout cas le modifier !! ) , tu peux me confirmer STP ???


Ligne 4 :

numéro = Range('affaire').Value

et :

'effacement et incréments
Range('zoneUtil').ClearContents
Range('affaire').Value = Range('affaire').Value + 1


A quoi correspond ta variable « affaire » , je ne comprends pas L

Merci d’avance Eric
 

ERIC S

XLDnaute Barbatruc
re

un fichier cohérent joint

chez moi il fonctionne

pour info

j'ai nommé la cellule A2 'affaire' ce qui me permet de remplacer l'adresse par le nom
j'ai nommé les cellules en jaune zoneUtil pour les mêmes raisons

dans cette version je compose le nom en utilisant le client rempli en B2 et le n° en A2

A essayer [file name=archivage2_20060329151649.zip size=11122]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/archivage2_20060329151649.zip[/file]
 

Pièces jointes

  • archivage2_20060329151649.zip
    10.9 KB · Affichages: 18
O

Ole

Guest
Arff, ca ne va pas vraiment

EN fait, j'voudrais juste faire cette petite macro :

Sub dddddddd()
Sheets('Devis simplifié (2)').Copy
ChDir _
'C:\\Documents and Settings\\stagiaire-als\\Bureau\\Création de devis\\Répertoire de stockage'
ActiveWorkbook.SaveAs Filename:= _
'C:\\Documents and Settings\\stagiaire-als\\Bureau\\Création de devis\\Répertoire de stockage\\classeur1.xls'
, FileFormat:=xlNormal, Password:='', WriteResPassword:='', _
ReadOnlyRecommended:=False, CreateBackup:=False
ActiveWindow.Close
End Sub



C simple et ca marche sauf que je ne peux pas choisir l'emplacement d'enregistrement et le nom du fichier
 

ERIC S

XLDnaute Barbatruc
re

reprenons les choses calmement:

0/ qu'est-ce qui ne va pas? le fichier archive2 ne fonctionne pas?....

1/où se trouve ton fichier d'origine (C:....)

2/choix du nom du fichier dans une cellule (Jxxx comme tu le disais ou choix à la main à chaque enregistrement) ?

3/ choix de l'emplacement - tu veux choisir le chemin complet, un sous-répertoire..?

4/ je vois une feuille (2), as-tu plusieurs feuilles ? Veux-tu toutes les enregistrer?

essaie de te poser les bonnes questions, les réponses viendront
 
O

ole

Guest
J'commence à perdre patience, je c pas comment tu fais pour rester calme toi, en tous cas merci et encore merci !!!


0/ qu'est-ce qui ne va pas? Ca me met le sous répertoire: Répertoire de stockage n'existe pas, je comprends pas il existe pourtant

Enregistrer sous répertoire courant ?? je vois pas exactement ce que tu veux dire

Si je met oui , ca m'affiche erreur à la ligne :
Range('zoneUtil').ClearContents


1/fichier d'origine : C:\\Documents and Settings\\stagiaire-als\\Bureau\\Création de devis\\Fichier temp.xls

2/choix du nom du fichier : j'voudrais taper mon nom client en j1673 et le numéro en j1674 et que ça me mette ca en nom d'enregistrement

3/ choix de l'emplacement C:\\Documents and Settings\\stagiaire-als\\Bureau\\Création de devis\\Répertoire de stockage

4/ je vois une feuille (2) : En faites mon 'Fichier temp. xls' est un enregistrement d'une feuille de ma base de données dans laquelle je dois encore effectuer la remise.
 
O

Ole

Guest
Je pensais ca simple car en fait il suffit de mettre ma remise et de faire enregistrer-sous, mettre l'emplacement et le nom


C pas sorcier, mais faire ca en visual basic et automatiser pour que le nom et l'emplacement soit définie, là c sorcier pour moi :(
 

ERIC S

XLDnaute Barbatruc
re
un code simple, tu mets l'adresse de la cellule contenant le nom du client à la place de B2
pour le n° d'affaire, à la place de A1
pour le nom de la feuille à la place de Feuil1

par contre que se passe-t-il pour tes formules, comment gères-tu les numéros de devis...??? vous perdrez des données, crois-en mon expérience.

mets au moins un readonlyrecommanded à true (avant dernière ligne)

sur archivage2 il y avait peut-être un bug, je crois que B2 était verrouillée dans ce cas outil protection déprotéger, format cellule protection décocher verrouillé puis outil protection protéger la feuille, pas de mot de passe


Sub sauvegarde()
'client en B2 à adapter
nom = Range('B2')
'N° en A2 à adapter
numéro = Range('A2').Value
'nom de la feuille à adapter
nomfeuille = 'Feuil1'
'répertoire courant et sousrépertoire de stockage
répertoire = ThisWorkbook.Path & '\\Répertoire de stockage\\'
Sheets(nomfeuille).Copy
ActiveWorkbook.SaveAs Filename:= _
répertoire & nom & numéro & '.xls', FileFormat:=xlNormal, Password:='', WriteResPassword:='', _
ReadOnlyRecommended:=False, CreateBackup:=False
ActiveWindow.Close
End Sub
 

ERIC S

XLDnaute Barbatruc
Bonjour

le code est l'équivalent du enregistrersous et a l'avantage de proposer le chemin et le nom du fichier mais lance la boite de dialogue Excel pour une action manuelle si souhaitée

A+ [file name=archivage4.zip size=10624]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/archivage4.zip[/file]
 

Pièces jointes

  • archivage4.zip
    10.4 KB · Affichages: 34

Discussions similaires

Réponses
24
Affichages
428
Réponses
2
Affichages
293
Réponses
0
Affichages
126

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 305
Messages
2 087 084
Membres
103 459
dernier inscrit
Arnocal