:oops: :oops: :oops: ok j'avais vrement pas compris... mais il est toujour pas d'accord il atend un separateur ede fin de liste sur la ) lol
Version imprimable
:oops: :oops: :oops: ok j'avais vrement pas compris... mais il est toujour pas d'accord il atend un separateur ede fin de liste sur la ) lol
oops pardon pour mon erreur
Correction & amelioration
@+Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 FichierIncremente = IncrementeFichier(Application.caller) Function IncrementeFichier(FichieraIncrementer) If InStr(1, FichieraIncrementer, "_") = 0 Then 'Pas d'incrementation trouvé = premierfichier increment = "01" IncrementeFichier = FichieraIncrementer & "_" & increment Else 'Si incrementation trouvée pos = InStr(1, FichieraIncrementer, "_") increment = Format(CStr(CDbl(Mid(FichieraIncrementer, pos + 1, Len(FichieraIncrementer)) + 1)), "00") IncrementeFichier = Left(FichieraIncrementer, pos) & increment End If End Function
En relisant l'aide, je m'aperçois que ça risque plus de t'embrouiller compte tenu de l'utilisation que j'en fait
Supposons "Fichier.xls"
J'ajoute "_" et "1" après fichier, ce qui donne Fichier_1
Si je fais NomFichier = Left("Fichier_1", instr(Fichier_1,"_")-1)+ "_"+ "2"
J'obtiens Fichier+ "_" + "2" = "Fichier_2"
Mais en faisant ça, je m'aperçois que je m'ai trompé une nouvelle fois.. :oops: et que je t'ai fai perdre ton temps :oops:
CORRECTION
J'espère que tu voudras bien m'excuser, je répondais entre deux coups de téléphone...Code:
1
2
3
4
5
6
7
8
9
10 Public Sub SaveFiles() 'sauvegarde le .xls dans sauvegarde Dim cmp For cmp = 1 To 100 FileCopy "C:\Documents and Settings\avaysse\Mes documents\" & Application.Caller & ".xls","C:\Documents and Settings\avaysse\Mes documents\sauvegarde\" & Left(Application.Caller,instr(Application.Caller,"_")-1) & cstr(cmp) & ".xls" Workbooks.Open Filename:="C:\Documents and Settings\avaysse\Mes documents\" _ & Left(Application.Caller,instr(Application.Caller,"_")-1) & cstr(cmp) & ".xls" Next End Sub
A+
je doute de ton code... se que je voudrais.. c'est renommer uniquement les fichier du dossier sauvegarde... mais pas les autres..
tu est tout excuser tu n'es pas a mon service.. mais tu es la pour m'aidé ;)Citation:
J'espère que tu voudras bien m'excuser, je répondais entre deux coups de téléphone...
EDIT
renvoi uneCode:
1
2
3 FileCopy "C:\Documents and Settings\avaysse\Mes documents\" & Application.Caller & ".xls", _ "C:\Documents and Settings\avaysse\Mes documents\sauvegarde\" _ & Left(Application.Caller, InStr(Application.Caller, "_") - 1) & CStr(cmp) & ".xls"
:cry:Citation:
incompatibilité de type...
juste pour savoir.. se serais possible de faire
aulieu d'essayer de tout faire en meme temp.. vu que sa plante.. lolCode:
1
2
3
4
5 copie de mon fichier dans sauvegarde ouverture de mon fichier modification de mon fichier sauvegarde...
EDIT dans cette idée...marche pas non plus :?Code:
1
2
3
4
5
6
7
8
9
10
11
12 Public Sub SaveFiles() 'sauvegarde le .xls dans sauvegarde Dim cmp For cmp = 1 To 100 FileCopy "C:\Documents and Settings\avaysse\Mes documents\" & Application.Caller & ".xls", _ "C:\Documents and Settings\avaysse\Mes documents\sauvegarde\" & Application.Caller & ".xls" Workbooks.Open Filename:="C:\Documents and Settings\avaysse\Mes documents\" & Application.Caller & ".xls" Name "C:\Documents and Settings\avaysse\Mes documents\sauvegarde\" & Application.Caller & ".xls" _ As "C:\Documents and Settings\avaysse\Mes documents\" _ & Left(Application.Caller, InStr(Application.Caller, "_") - 1) & CStr(cmp) & ".xls" Next End Sub
hello, me revoilou,
Je suis allé faire des courses... Devine ! "Gost" ! Un logiciel de copie de disk...
Bon et si on reprenait tout au début ?
Tu veux copier ton fichier en lui affectant un N°
Ensuite, quoi ?
Pour que ce soit plus clair, ne peut-on pas passer par des variable ? Y a-t-il un empêchement ? Sinon :
Si, sur cette dernière ligne, tu as erreur "Incompatibilité de type", c'est que cstr n'est pas accepté.Code:
1
2
3
4
5
6
7
8 Public Sub SaveFiles() 'sauvegarde le .xls dans sauvegarde Dim cmp, NomFich NomFich = Application.Caller 'Là, je ne peux pas tester (VBA97) For cmp = 1 To 1 'laisse à 1 pour cet essai FileCopy "C:\Documents and Settings\avaysse\Mes documents\" & NomFich & ".xls", _ "C:\Documents and Settings\avaysse\Mes documents\sauvegarde\" & NomFich & "_" & cstr(i) & ".xls" Next
Si l'erreur survient sur "NomFich = Application.Caller" alors je ne comprends pas comment fonctionne cette propriété.
Tu dis pendant que je te concocte une suite
A+
Comme je n'ai pas (encore) ta version, je travaille en aveugle :cry:
en plein dans le mille :D sa marche po :?Citation:
Si, sur cette dernière ligne, tu as erreur "Incompatibilité de type", c'est que cstr n'est pas accepté.
vi je me suis deja servi de se genre de truc lol :D :lol:Citation:
Je suis allé faire des courses... Devine ! "Gost" ! Un logiciel de copie de disk..
Bon, on va trouver autre chose : En plus, tu viens d'apprendre trim...
Essai çaCode:
1
2
3
4
5
6
7
8 Public Sub SaveFiles() 'sauvegarde le .xls dans sauvegarde Dim cmp, NomFich NomFich = Application.Caller 'Là, je ne peux pas tester (VBA97) For cmp = 1 To 1 'laisse à 1 pour cet essai FileCopy "C:\Documents and Settings\avaysse\Mes documents\" & NomFich & ".xls", _ "C:\Documents and Settings\avaysse\Mes documents\sauvegarde\" & NomFich & "_" & trim(str(i)) & ".xls" Next
:D :D :D
tu veus une bonne nouvelle ?? sa a l'air de marcher impec :D
je comprend plus rien a se prog...
Code:
1
2
3
4
5
6
7
8
9
10 Public Sub SaveFiles() 'sauvegarde le .xls dans sauvegarde Dim cmp, NomFich NomFich = Application.Caller 'Là, je ne peux pas tester (VBA97) For cmp = 1 To 1 'laisse à 1 pour cet essai FileCopy "C:\Documents and Settings\avaysse\Mes documents\" & NomFich & ".xls", _ "C:\Documents and Settings\avaysse\Mes documents\sauvegarde\" & NomFich & "_" & Trim(Str(i)) & ".xls" Next Workbook.Open Filename:="C:\Documents and Settings\avaysse\Mes documents\" & NomFich & ".xls" End Sub
Donc, on continue !
ça vient !
A tout'
Maintenant, tu peux faire sans te soucier de ce qu'il y a dans Application.Caller puisque NomFich ne changera plus jamais jamais :lol:
Tu mets
et picétou !Code:For i = 1 to 100
A moins que tu fasses autre chose en plus...
Tu dis
oui je doit ouvrir le classeur que je copie ( celui qui n'est pas dans sauvegarde...) et LA sa plante... :cry:
EDIT
:marteau: :marteau: :marteau:
si je reclique sur le bouton la seconde suivante rien ne se passe.. il ne fait pas une copie a chaque click... :cry:
Essaie çaCode:
1
2
3
4
5
6
7
8
9
10 Public Sub SaveFiles() 'sauvegarde le .xls dans sauvegarde Dim cmp, NomFich NomFich = Application.Caller 'Là, je ne peux pas tester (VBA97) For cmp = 1 To 1 'laisse à 1 pour cet essai FileCopy "C:\Documents and Settings\avaysse\Mes documents\" & NomFich & ".xls", _ "C:\Documents and Settings\avaysse\Mes documents\sauvegarde\" & NomFich & "_" & trim(str(i)) & ".xls" Workbooks.Open Filename:="C:\Documents and Settings\avaysse\Mes documents\" _ & NomFich & ".xls" Next
Tu dis
Ce que je ne comprends pas c'est que tu ouvres 100 fois ton fichier.
Tu ne veux pas seulement l'ouvrir une fois que tes 100 copies sont réalisées ?
A+
oui sa la bien ouvert merci mais regarde l'edit de mon dernier port ;)
erf
je croi qu'on c'est tres tres mal compris...
enfait se que je veu...
c'est juste que mon fichier soit copié et ouvert... la copie doit etre incrementale.... le 100.. etait pour donné une valeur max a cette incrementation...Citation:
Envoyé par ogenki
Tu as laissé le compteur à 1
Peux-tu répondre à ma dernière question ?
Où se trouve le fichier à copier ?
Où mets-tu la copie
Quel fichier ouvres-tu ?
Combien de fois veux-tu l'ouvrir ?
Ouf !
A tout'
Edit
Je précise, le fichier incrémenté ou le fichier d'origine ?Citation:
Quel fichier ouvres-tu ?
Pourquoi l'ouvrir 100 fois ?
mes documentCitation:
Où se trouve le fichier à copier ?
mes document \ sauvegardeCitation:
Où se trouve le fichier à copier ?
celui de mes documentCitation:
Quel fichier ouvres-tu ?
1 seule foisCitation:
Combien de fois veux-tu l'ouvrir ?
ouf! lol :lol:
EDIT je veu rien ouvrir 100 foi.. on c'est mal compris ........
Voilà j'ai vu ton dernier post... 1 fois ! ok, avant ou après avoir copié tes 100 fichiers ?
A tout'
:cry: :cry: :cry: :cry: :cry: je veu pas ouvrir 100 foi:cry: :cry: :cry: :cry: :cry:
erf bon oublie ce 100... prend l'infinie... je veu que temp que je click sur mon bouton sa crée une copie qui s'increment...a l'infini...