Bonjou à tous,
J'ai besoin de vos lumières pour terminer 1 macro, en complément d'1 que
j'ai trouvé sur le forum ( il s'agit d'1 code de F.Sigonneau -
Recherche_fichier_sur_disque_. De passage, 1 gd merci à FS. çà fonctionne
à
merveille.
Je reviens à mes questions :
1°) Est - il possible avec :
.LookIn de chercher sur plusieurs répertoire , ex : "C:mes
documentsMesFichiers", "C:mes documentsExcel" etc...
Est ce que je peut utiliser ChDir "C:mes Documents......."
2°) D'après le code de FS, ts les fichiers trouvés sur le disque dur sont
copiés sur 1 feuille. Et de là, je souhaiterais récupérer le nom de
l'utilisateur, nom du fichier et la date de sauvegarde sur 3 colonnes
distincts, disant sur les colonnes
H à J de la même feuille.
exemple : c:mes documentsexcelaaaaaa_10000_0703.xls ==> nom = aaaaaa
,
nom fichier = 10000, date = 0703
et comparer avec 1 feuille de donnée qui ressemble comme suit :
A B C D E
F G H I
Nom Utilisateur 10000 10001 10002 10003 10004
10005 10006 10007
si sur la feuille d'extraction, il existe le même utilisateur aaaaaa et le
fichier 100000 à 100007, la date de création 0703 ou autres s'affichent ds
les colonnes correspondantes sur la feuille de données.
pr l'extraction, j'ai pensé au (gauche(plage de données) ou (midb(plage
de données) ou (droite(plage de données), mais c là que je patauge,
puisque les noms des utilisateurs n'ont pas les mêmes nombres de
caractères,
ils varient de 4 caractères à plus de 10 et il aura au moins 50
utilisateurs.
Je travaille sur xl 2000 et j'espère que je suis assez clair ds mon
explication.
Merci de vos aides.
@+
Seng
Bonjou à tous,
J'ai besoin de vos lumières pour terminer 1 macro, en complément d'1 que
j'ai trouvé sur le forum ( il s'agit d'1 code de F.Sigonneau -
Recherche_fichier_sur_disque_. De passage, 1 gd merci à FS. çà fonctionne
à
merveille.
Je reviens à mes questions :
1°) Est - il possible avec :
.LookIn de chercher sur plusieurs répertoire , ex : "C:mes
documentsMesFichiers", "C:mes documentsExcel" etc...
Est ce que je peut utiliser ChDir "C:mes Documents......."
2°) D'après le code de FS, ts les fichiers trouvés sur le disque dur sont
copiés sur 1 feuille. Et de là, je souhaiterais récupérer le nom de
l'utilisateur, nom du fichier et la date de sauvegarde sur 3 colonnes
distincts, disant sur les colonnes
H à J de la même feuille.
exemple : c:mes documentsexcelaaaaaa_10000_0703.xls ==> nom = aaaaaa
,
nom fichier = 10000, date = 0703
et comparer avec 1 feuille de donnée qui ressemble comme suit :
A B C D E
F G H I
Nom Utilisateur 10000 10001 10002 10003 10004
10005 10006 10007
si sur la feuille d'extraction, il existe le même utilisateur aaaaaa et le
fichier 100000 à 100007, la date de création 0703 ou autres s'affichent ds
les colonnes correspondantes sur la feuille de données.
pr l'extraction, j'ai pensé au (gauche(plage de données) ou (midb(plage
de données) ou (droite(plage de données), mais c là que je patauge,
puisque les noms des utilisateurs n'ont pas les mêmes nombres de
caractères,
ils varient de 4 caractères à plus de 10 et il aura au moins 50
utilisateurs.
Je travaille sur xl 2000 et j'espère que je suis assez clair ds mon
explication.
Merci de vos aides.
@+
Seng
Bonjou à tous,
J'ai besoin de vos lumières pour terminer 1 macro, en complément d'1 que
j'ai trouvé sur le forum ( il s'agit d'1 code de F.Sigonneau -
Recherche_fichier_sur_disque_. De passage, 1 gd merci à FS. çà fonctionne
à
merveille.
Je reviens à mes questions :
1°) Est - il possible avec :
.LookIn de chercher sur plusieurs répertoire , ex : "C:mes
documentsMesFichiers", "C:mes documentsExcel" etc...
Est ce que je peut utiliser ChDir "C:mes Documents......."
2°) D'après le code de FS, ts les fichiers trouvés sur le disque dur sont
copiés sur 1 feuille. Et de là, je souhaiterais récupérer le nom de
l'utilisateur, nom du fichier et la date de sauvegarde sur 3 colonnes
distincts, disant sur les colonnes
H à J de la même feuille.
exemple : c:mes documentsexcelaaaaaa_10000_0703.xls ==> nom = aaaaaa
,
nom fichier = 10000, date = 0703
et comparer avec 1 feuille de donnée qui ressemble comme suit :
A B C D E
F G H I
Nom Utilisateur 10000 10001 10002 10003 10004
10005 10006 10007
si sur la feuille d'extraction, il existe le même utilisateur aaaaaa et le
fichier 100000 à 100007, la date de création 0703 ou autres s'affichent ds
les colonnes correspondantes sur la feuille de données.
pr l'extraction, j'ai pensé au (gauche(plage de données) ou (midb(plage
de données) ou (droite(plage de données), mais c là que je patauge,
puisque les noms des utilisateurs n'ont pas les mêmes nombres de
caractères,
ils varient de 4 caractères à plus de 10 et il aura au moins 50
utilisateurs.
Je travaille sur xl 2000 et j'espère que je suis assez clair ds mon
explication.
Merci de vos aides.
@+
Seng
Bonsoir,
Pour l'extraction des éléments du nom des fichiers, tu peux aussi utiliser
une
petite fonction VBA comme celle-ci :
Function DecoupeNomFich(s)
Dim Fichier, Arr
Fichier = Split(s, "")(UBound(Split(s, "")))
Fichier = Split(Fichier, ".")(0)
Arr = Split(Fichier, "_")
DecoupeNomFich = Arr
End Function
C'est une fonction matricielle.
Si tes noms de fichiers sont en colonne A, sélectionne les cellules B1:D1
et
saisis
ÞcoupeNomFich(A1)
puis valide (Ctrl+Maj+Entrée) et recopie vers le bas autant que
nécessaire.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjou à tous,
J'ai besoin de vos lumières pour terminer 1 macro, en complément d'1 que
j'ai trouvé sur le forum ( il s'agit d'1 code de F.Sigonneau -
Recherche_fichier_sur_disque_. De passage, 1 gd merci à FS. çà
fonctionne à
merveille.
Je reviens à mes questions :
1°) Est - il possible avec :
.LookIn de chercher sur plusieurs répertoire , ex : "C:mes
documentsMesFichiers", "C:mes documentsExcel" etc...
Est ce que je peut utiliser ChDir "C:mes Documents......."
2°) D'après le code de FS, ts les fichiers trouvés sur le disque dur
sont
copiés sur 1 feuille. Et de là, je souhaiterais récupérer le nom de
l'utilisateur, nom du fichier et la date de sauvegarde sur 3 colonnes
distincts, disant sur les colonnes
H à J de la même feuille.
exemple : c:mes documentsexcelaaaaaa_10000_0703.xls ==> nom aaaaaa ,
nom fichier = 10000, date = 0703
et comparer avec 1 feuille de donnée qui ressemble comme suit :
A B C D
E
F G H I
Nom Utilisateur 10000 10001 10002 10003 10004
10005
10006 10007
si sur la feuille d'extraction, il existe le même utilisateur aaaaaa et
le
fichier 100000 à 100007, la date de création 0703 ou autres s'affichent
ds
les colonnes correspondantes sur la feuille de données.
pr l'extraction, j'ai pensé au =si(gauche(plage de données) ou
si(mid(plage
de données) ou si(droite(plage de données), mais c là que je patauge,
puisque les noms des utilisateurs n'ont pas les mêmes nombres de
caractères,
ils varient de 4 caractères à plus de 10 et il aura au moins 50
utilisateurs.
Je travaille sur xl 2000 et j'espère que je suis assez clair ds mon
explication.
Merci de vos aides.
@+
Seng
Bonsoir,
Pour l'extraction des éléments du nom des fichiers, tu peux aussi utiliser
une
petite fonction VBA comme celle-ci :
Function DecoupeNomFich(s)
Dim Fichier, Arr
Fichier = Split(s, "")(UBound(Split(s, "")))
Fichier = Split(Fichier, ".")(0)
Arr = Split(Fichier, "_")
DecoupeNomFich = Arr
End Function
C'est une fonction matricielle.
Si tes noms de fichiers sont en colonne A, sélectionne les cellules B1:D1
et
saisis
ÞcoupeNomFich(A1)
puis valide (Ctrl+Maj+Entrée) et recopie vers le bas autant que
nécessaire.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjou à tous,
J'ai besoin de vos lumières pour terminer 1 macro, en complément d'1 que
j'ai trouvé sur le forum ( il s'agit d'1 code de F.Sigonneau -
Recherche_fichier_sur_disque_. De passage, 1 gd merci à FS. çà
fonctionne à
merveille.
Je reviens à mes questions :
1°) Est - il possible avec :
.LookIn de chercher sur plusieurs répertoire , ex : "C:mes
documentsMesFichiers", "C:mes documentsExcel" etc...
Est ce que je peut utiliser ChDir "C:mes Documents......."
2°) D'après le code de FS, ts les fichiers trouvés sur le disque dur
sont
copiés sur 1 feuille. Et de là, je souhaiterais récupérer le nom de
l'utilisateur, nom du fichier et la date de sauvegarde sur 3 colonnes
distincts, disant sur les colonnes
H à J de la même feuille.
exemple : c:mes documentsexcelaaaaaa_10000_0703.xls ==> nom aaaaaa ,
nom fichier = 10000, date = 0703
et comparer avec 1 feuille de donnée qui ressemble comme suit :
A B C D
E
F G H I
Nom Utilisateur 10000 10001 10002 10003 10004
10005
10006 10007
si sur la feuille d'extraction, il existe le même utilisateur aaaaaa et
le
fichier 100000 à 100007, la date de création 0703 ou autres s'affichent
ds
les colonnes correspondantes sur la feuille de données.
pr l'extraction, j'ai pensé au =si(gauche(plage de données) ou
si(mid(plage
de données) ou si(droite(plage de données), mais c là que je patauge,
puisque les noms des utilisateurs n'ont pas les mêmes nombres de
caractères,
ils varient de 4 caractères à plus de 10 et il aura au moins 50
utilisateurs.
Je travaille sur xl 2000 et j'espère que je suis assez clair ds mon
explication.
Merci de vos aides.
@+
Seng
Bonsoir,
Pour l'extraction des éléments du nom des fichiers, tu peux aussi utiliser
une
petite fonction VBA comme celle-ci :
Function DecoupeNomFich(s)
Dim Fichier, Arr
Fichier = Split(s, "")(UBound(Split(s, "")))
Fichier = Split(Fichier, ".")(0)
Arr = Split(Fichier, "_")
DecoupeNomFich = Arr
End Function
C'est une fonction matricielle.
Si tes noms de fichiers sont en colonne A, sélectionne les cellules B1:D1
et
saisis
ÞcoupeNomFich(A1)
puis valide (Ctrl+Maj+Entrée) et recopie vers le bas autant que
nécessaire.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjou à tous,
J'ai besoin de vos lumières pour terminer 1 macro, en complément d'1 que
j'ai trouvé sur le forum ( il s'agit d'1 code de F.Sigonneau -
Recherche_fichier_sur_disque_. De passage, 1 gd merci à FS. çà
fonctionne à
merveille.
Je reviens à mes questions :
1°) Est - il possible avec :
.LookIn de chercher sur plusieurs répertoire , ex : "C:mes
documentsMesFichiers", "C:mes documentsExcel" etc...
Est ce que je peut utiliser ChDir "C:mes Documents......."
2°) D'après le code de FS, ts les fichiers trouvés sur le disque dur
sont
copiés sur 1 feuille. Et de là, je souhaiterais récupérer le nom de
l'utilisateur, nom du fichier et la date de sauvegarde sur 3 colonnes
distincts, disant sur les colonnes
H à J de la même feuille.
exemple : c:mes documentsexcelaaaaaa_10000_0703.xls ==> nom aaaaaa ,
nom fichier = 10000, date = 0703
et comparer avec 1 feuille de donnée qui ressemble comme suit :
A B C D
E
F G H I
Nom Utilisateur 10000 10001 10002 10003 10004
10005
10006 10007
si sur la feuille d'extraction, il existe le même utilisateur aaaaaa et
le
fichier 100000 à 100007, la date de création 0703 ou autres s'affichent
ds
les colonnes correspondantes sur la feuille de données.
pr l'extraction, j'ai pensé au =si(gauche(plage de données) ou
si(mid(plage
de données) ou si(droite(plage de données), mais c là que je patauge,
puisque les noms des utilisateurs n'ont pas les mêmes nombres de
caractères,
ils varient de 4 caractères à plus de 10 et il aura au moins 50
utilisateurs.
Je travaille sur xl 2000 et j'espère que je suis assez clair ds mon
explication.
Merci de vos aides.
@+
Seng
Merci Frédéric,
j'ai 1 autre question à te poser.
Avec tes macros SaveAsSansMacro et SupCode, est- il possible de sauvegarder
1 fichier xls de type Matrice_aaaaaa.xls
en 2 fichiers comme suit : NomUtil_aaaaaa_0703.xls
et NomUtil_aaaaaa.xls
et ds 2 répertoire différentes.
Merci d'avance.
@+
Seng
"Frédéric Sigonneau" a écrit dans le message
de news:Bonsoir,
Pour l'extraction des éléments du nom des fichiers, tu peux aussi utiliser
unepetite fonction VBA comme celle-ci :
Function DecoupeNomFich(s)
Dim Fichier, Arr
Fichier = Split(s, "")(UBound(Split(s, "")))
Fichier = Split(Fichier, ".")(0)
Arr = Split(Fichier, "_")
DecoupeNomFich = Arr
End Function
C'est une fonction matricielle.
Si tes noms de fichiers sont en colonne A, sélectionne les cellules B1:D1
etsaisis
ÞcoupeNomFich(A1)
puis valide (Ctrl+Maj+Entrée) et recopie vers le bas autant que
nécessaire.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjou à tous,
J'ai besoin de vos lumières pour terminer 1 macro, en complément d'1 que
j'ai trouvé sur le forum ( il s'agit d'1 code de F.Sigonneau -
Recherche_fichier_sur_disque_. De passage, 1 gd merci à FS. çà
fonctionne àmerveille.
Je reviens à mes questions :
1°) Est - il possible avec :
.LookIn de chercher sur plusieurs répertoire , ex : "C:mes
documentsMesFichiers", "C:mes documentsExcel" etc...
Est ce que je peut utiliser ChDir "C:mes Documents......."
2°) D'après le code de FS, ts les fichiers trouvés sur le disque dur
sontcopiés sur 1 feuille. Et de là, je souhaiterais récupérer le nom de
l'utilisateur, nom du fichier et la date de sauvegarde sur 3 colonnes
distincts, disant sur les colonnes
H à J de la même feuille.
exemple : c:mes documentsexcelaaaaaa_10000_0703.xls ==> nom > aaaaaa ,
nom fichier = 10000, date = 0703
et comparer avec 1 feuille de donnée qui ressemble comme suit :
A B C D
EF G H I
Nom Utilisateur 10000 10001 10002 10003 10004
1000510006 10007
si sur la feuille d'extraction, il existe le même utilisateur aaaaaa et
lefichier 100000 à 100007, la date de création 0703 ou autres s'affichent
dsles colonnes correspondantes sur la feuille de données.
pr l'extraction, j'ai pensé au =si(gauche(plage de données) ou
si(mid(plagede données) ou si(droite(plage de données), mais c là que je patauge,
puisque les noms des utilisateurs n'ont pas les mêmes nombres de
caractères,ils varient de 4 caractères à plus de 10 et il aura au moins 50
utilisateurs.
Je travaille sur xl 2000 et j'espère que je suis assez clair ds mon
explication.
Merci de vos aides.
@+
Seng
Merci Frédéric,
j'ai 1 autre question à te poser.
Avec tes macros SaveAsSansMacro et SupCode, est- il possible de sauvegarder
1 fichier xls de type Matrice_aaaaaa.xls
en 2 fichiers comme suit : NomUtil_aaaaaa_0703.xls
et NomUtil_aaaaaa.xls
et ds 2 répertoire différentes.
Merci d'avance.
@+
Seng
"Frédéric Sigonneau" <frederic.sigonneau@wanadoo.fr> a écrit dans le message
de news:3F5B05EB.B38EE2AC@wanadoo.fr...
Bonsoir,
Pour l'extraction des éléments du nom des fichiers, tu peux aussi utiliser
une
petite fonction VBA comme celle-ci :
Function DecoupeNomFich(s)
Dim Fichier, Arr
Fichier = Split(s, "")(UBound(Split(s, "")))
Fichier = Split(Fichier, ".")(0)
Arr = Split(Fichier, "_")
DecoupeNomFich = Arr
End Function
C'est une fonction matricielle.
Si tes noms de fichiers sont en colonne A, sélectionne les cellules B1:D1
et
saisis
ÞcoupeNomFich(A1)
puis valide (Ctrl+Maj+Entrée) et recopie vers le bas autant que
nécessaire.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjou à tous,
J'ai besoin de vos lumières pour terminer 1 macro, en complément d'1 que
j'ai trouvé sur le forum ( il s'agit d'1 code de F.Sigonneau -
Recherche_fichier_sur_disque_. De passage, 1 gd merci à FS. çà
fonctionne à
merveille.
Je reviens à mes questions :
1°) Est - il possible avec :
.LookIn de chercher sur plusieurs répertoire , ex : "C:mes
documentsMesFichiers", "C:mes documentsExcel" etc...
Est ce que je peut utiliser ChDir "C:mes Documents......."
2°) D'après le code de FS, ts les fichiers trouvés sur le disque dur
sont
copiés sur 1 feuille. Et de là, je souhaiterais récupérer le nom de
l'utilisateur, nom du fichier et la date de sauvegarde sur 3 colonnes
distincts, disant sur les colonnes
H à J de la même feuille.
exemple : c:mes documentsexcelaaaaaa_10000_0703.xls ==> nom > aaaaaa ,
nom fichier = 10000, date = 0703
et comparer avec 1 feuille de donnée qui ressemble comme suit :
A B C D
E
F G H I
Nom Utilisateur 10000 10001 10002 10003 10004
10005
10006 10007
si sur la feuille d'extraction, il existe le même utilisateur aaaaaa et
le
fichier 100000 à 100007, la date de création 0703 ou autres s'affichent
ds
les colonnes correspondantes sur la feuille de données.
pr l'extraction, j'ai pensé au =si(gauche(plage de données) ou
si(mid(plage
de données) ou si(droite(plage de données), mais c là que je patauge,
puisque les noms des utilisateurs n'ont pas les mêmes nombres de
caractères,
ils varient de 4 caractères à plus de 10 et il aura au moins 50
utilisateurs.
Je travaille sur xl 2000 et j'espère que je suis assez clair ds mon
explication.
Merci de vos aides.
@+
Seng
Merci Frédéric,
j'ai 1 autre question à te poser.
Avec tes macros SaveAsSansMacro et SupCode, est- il possible de sauvegarder
1 fichier xls de type Matrice_aaaaaa.xls
en 2 fichiers comme suit : NomUtil_aaaaaa_0703.xls
et NomUtil_aaaaaa.xls
et ds 2 répertoire différentes.
Merci d'avance.
@+
Seng
"Frédéric Sigonneau" a écrit dans le message
de news:Bonsoir,
Pour l'extraction des éléments du nom des fichiers, tu peux aussi utiliser
unepetite fonction VBA comme celle-ci :
Function DecoupeNomFich(s)
Dim Fichier, Arr
Fichier = Split(s, "")(UBound(Split(s, "")))
Fichier = Split(Fichier, ".")(0)
Arr = Split(Fichier, "_")
DecoupeNomFich = Arr
End Function
C'est une fonction matricielle.
Si tes noms de fichiers sont en colonne A, sélectionne les cellules B1:D1
etsaisis
ÞcoupeNomFich(A1)
puis valide (Ctrl+Maj+Entrée) et recopie vers le bas autant que
nécessaire.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjou à tous,
J'ai besoin de vos lumières pour terminer 1 macro, en complément d'1 que
j'ai trouvé sur le forum ( il s'agit d'1 code de F.Sigonneau -
Recherche_fichier_sur_disque_. De passage, 1 gd merci à FS. çà
fonctionne àmerveille.
Je reviens à mes questions :
1°) Est - il possible avec :
.LookIn de chercher sur plusieurs répertoire , ex : "C:mes
documentsMesFichiers", "C:mes documentsExcel" etc...
Est ce que je peut utiliser ChDir "C:mes Documents......."
2°) D'après le code de FS, ts les fichiers trouvés sur le disque dur
sontcopiés sur 1 feuille. Et de là, je souhaiterais récupérer le nom de
l'utilisateur, nom du fichier et la date de sauvegarde sur 3 colonnes
distincts, disant sur les colonnes
H à J de la même feuille.
exemple : c:mes documentsexcelaaaaaa_10000_0703.xls ==> nom > aaaaaa ,
nom fichier = 10000, date = 0703
et comparer avec 1 feuille de donnée qui ressemble comme suit :
A B C D
EF G H I
Nom Utilisateur 10000 10001 10002 10003 10004
1000510006 10007
si sur la feuille d'extraction, il existe le même utilisateur aaaaaa et
lefichier 100000 à 100007, la date de création 0703 ou autres s'affichent
dsles colonnes correspondantes sur la feuille de données.
pr l'extraction, j'ai pensé au =si(gauche(plage de données) ou
si(mid(plagede données) ou si(droite(plage de données), mais c là que je patauge,
puisque les noms des utilisateurs n'ont pas les mêmes nombres de
caractères,ils varient de 4 caractères à plus de 10 et il aura au moins 50
utilisateurs.
Je travaille sur xl 2000 et j'espère que je suis assez clair ds mon
explication.
Merci de vos aides.
@+
Seng
Bonsoir,
Si je comprends bien ta question, tu pourrais y arriver en suivant ces
étapes :
- une procédure de ce type dans un module standard du classeur
Matrice-aaaaaa.xls :
Sub DeleteAllVBA(Wbk As Workbook)
'd'après un auteur inconnu, mpep
Dim VBComp As Variant
Dim VBComps As Variant
Set VBComps = Wbk.VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 1 To 3
VBComps.Remove VBComp
Case Else
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next VBComp
End Sub
- toujours dans le même module, une seconde procédure qui s'occupe de
l'enregistrement des copies sous le nom souhaité et dans les répertoires
souhaités, et détruit le code des copies :
Sub testSave()
Dim Fich1$, Fich2$, Classeur As Workbook
Fich1 = "d:fsdataszazazaza1NomUtil_aaaaaa_0703.xls"
'(je te laisse le soin de la méthode pour obtenir le nouveau nom du
classeur)
ThisWorkbook.SaveCopyAs Fich1
Set Classeur = Workbooks.Open(Fich1)
DeleteAllVBA Classeur
Classeur.Close True
Fich2 = "d:fsdataszazazaza2NomUtil_aaaaaa.xls"
'(idem)
ThisWorkbook.SaveCopyAs Fich2
Set Classeur = Workbooks.Open(Fich2)
DeleteAllVBA Classeur
Classeur.Close True
End Sub
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Merci Frédéric,
j'ai 1 autre question à te poser.
Avec tes macros SaveAsSansMacro et SupCode, est- il possible de
sauvegarder
1 fichier xls de type Matrice_aaaaaa.xls
en 2 fichiers comme suit : NomUtil_aaaaaa_0703.xls
et NomUtil_aaaaaa.xls
et ds 2 répertoire différentes.
Merci d'avance.
@+
Seng
"Frédéric Sigonneau" a écrit dans le
message
de news:Bonsoir,
Pour l'extraction des éléments du nom des fichiers, tu peux aussi
utiliser
unepetite fonction VBA comme celle-ci :
Function DecoupeNomFich(s)
Dim Fichier, Arr
Fichier = Split(s, "")(UBound(Split(s, "")))
Fichier = Split(Fichier, ".")(0)
Arr = Split(Fichier, "_")
DecoupeNomFich = Arr
End Function
C'est une fonction matricielle.
Si tes noms de fichiers sont en colonne A, sélectionne les cellules
B1:D1
etsaisis
ÞcoupeNomFich(A1)
puis valide (Ctrl+Maj+Entrée) et recopie vers le bas autant que
nécessaire.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjou à tous,
J'ai besoin de vos lumières pour terminer 1 macro, en complément d'1
que
j'ai trouvé sur le forum ( il s'agit d'1 code de F.Sigonneau -
Recherche_fichier_sur_disque_. De passage, 1 gd merci à FS. çà
fonctionne àmerveille.
Je reviens à mes questions :
1°) Est - il possible avec :
.LookIn de chercher sur plusieurs répertoire , ex : "C:mes
documentsMesFichiers", "C:mes documentsExcel" etc...
Est ce que je peut utiliser ChDir "C:mes Documents......."
2°) D'après le code de FS, ts les fichiers trouvés sur le disque dur
sontcopiés sur 1 feuille. Et de là, je souhaiterais récupérer le nom de
l'utilisateur, nom du fichier et la date de sauvegarde sur 3
colonnes
distincts, disant sur les colonnes
H à J de la même feuille.
exemple : c:mes documentsexcelaaaaaa_10000_0703.xls ==> nom > > aaaaaa ,
nom fichier = 10000, date = 0703
et comparer avec 1 feuille de donnée qui ressemble comme suit :
A B C D
EF G H I
Nom Utilisateur 10000 10001 10002 10003 10004
1000510006 10007
si sur la feuille d'extraction, il existe le même utilisateur aaaaaa
et
lefichier 100000 à 100007, la date de création 0703 ou autres
s'affichent
dsles colonnes correspondantes sur la feuille de données.
pr l'extraction, j'ai pensé au =si(gauche(plage de données) ou
si(mid(plagede données) ou si(droite(plage de données), mais c là que je
patauge,
puisque les noms des utilisateurs n'ont pas les mêmes nombres de
caractères,ils varient de 4 caractères à plus de 10 et il aura au moins 50
utilisateurs.
Je travaille sur xl 2000 et j'espère que je suis assez clair ds mon
explication.
Merci de vos aides.
@+
Seng
Bonsoir,
Si je comprends bien ta question, tu pourrais y arriver en suivant ces
étapes :
- une procédure de ce type dans un module standard du classeur
Matrice-aaaaaa.xls :
Sub DeleteAllVBA(Wbk As Workbook)
'd'après un auteur inconnu, mpep
Dim VBComp As Variant
Dim VBComps As Variant
Set VBComps = Wbk.VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 1 To 3
VBComps.Remove VBComp
Case Else
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next VBComp
End Sub
- toujours dans le même module, une seconde procédure qui s'occupe de
l'enregistrement des copies sous le nom souhaité et dans les répertoires
souhaités, et détruit le code des copies :
Sub testSave()
Dim Fich1$, Fich2$, Classeur As Workbook
Fich1 = "d:fsdataszazazaza1NomUtil_aaaaaa_0703.xls"
'(je te laisse le soin de la méthode pour obtenir le nouveau nom du
classeur)
ThisWorkbook.SaveCopyAs Fich1
Set Classeur = Workbooks.Open(Fich1)
DeleteAllVBA Classeur
Classeur.Close True
Fich2 = "d:fsdataszazazaza2NomUtil_aaaaaa.xls"
'(idem)
ThisWorkbook.SaveCopyAs Fich2
Set Classeur = Workbooks.Open(Fich2)
DeleteAllVBA Classeur
Classeur.Close True
End Sub
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Merci Frédéric,
j'ai 1 autre question à te poser.
Avec tes macros SaveAsSansMacro et SupCode, est- il possible de
sauvegarder
1 fichier xls de type Matrice_aaaaaa.xls
en 2 fichiers comme suit : NomUtil_aaaaaa_0703.xls
et NomUtil_aaaaaa.xls
et ds 2 répertoire différentes.
Merci d'avance.
@+
Seng
"Frédéric Sigonneau" <frederic.sigonneau@wanadoo.fr> a écrit dans le
message
de news:3F5B05EB.B38EE2AC@wanadoo.fr...
Bonsoir,
Pour l'extraction des éléments du nom des fichiers, tu peux aussi
utiliser
une
petite fonction VBA comme celle-ci :
Function DecoupeNomFich(s)
Dim Fichier, Arr
Fichier = Split(s, "")(UBound(Split(s, "")))
Fichier = Split(Fichier, ".")(0)
Arr = Split(Fichier, "_")
DecoupeNomFich = Arr
End Function
C'est une fonction matricielle.
Si tes noms de fichiers sont en colonne A, sélectionne les cellules
B1:D1
et
saisis
ÞcoupeNomFich(A1)
puis valide (Ctrl+Maj+Entrée) et recopie vers le bas autant que
nécessaire.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjou à tous,
J'ai besoin de vos lumières pour terminer 1 macro, en complément d'1
que
j'ai trouvé sur le forum ( il s'agit d'1 code de F.Sigonneau -
Recherche_fichier_sur_disque_. De passage, 1 gd merci à FS. çà
fonctionne à
merveille.
Je reviens à mes questions :
1°) Est - il possible avec :
.LookIn de chercher sur plusieurs répertoire , ex : "C:mes
documentsMesFichiers", "C:mes documentsExcel" etc...
Est ce que je peut utiliser ChDir "C:mes Documents......."
2°) D'après le code de FS, ts les fichiers trouvés sur le disque dur
sont
copiés sur 1 feuille. Et de là, je souhaiterais récupérer le nom de
l'utilisateur, nom du fichier et la date de sauvegarde sur 3
colonnes
distincts, disant sur les colonnes
H à J de la même feuille.
exemple : c:mes documentsexcelaaaaaa_10000_0703.xls ==> nom > > aaaaaa ,
nom fichier = 10000, date = 0703
et comparer avec 1 feuille de donnée qui ressemble comme suit :
A B C D
E
F G H I
Nom Utilisateur 10000 10001 10002 10003 10004
10005
10006 10007
si sur la feuille d'extraction, il existe le même utilisateur aaaaaa
et
le
fichier 100000 à 100007, la date de création 0703 ou autres
s'affichent
ds
les colonnes correspondantes sur la feuille de données.
pr l'extraction, j'ai pensé au =si(gauche(plage de données) ou
si(mid(plage
de données) ou si(droite(plage de données), mais c là que je
patauge,
puisque les noms des utilisateurs n'ont pas les mêmes nombres de
caractères,
ils varient de 4 caractères à plus de 10 et il aura au moins 50
utilisateurs.
Je travaille sur xl 2000 et j'espère que je suis assez clair ds mon
explication.
Merci de vos aides.
@+
Seng
Bonsoir,
Si je comprends bien ta question, tu pourrais y arriver en suivant ces
étapes :
- une procédure de ce type dans un module standard du classeur
Matrice-aaaaaa.xls :
Sub DeleteAllVBA(Wbk As Workbook)
'd'après un auteur inconnu, mpep
Dim VBComp As Variant
Dim VBComps As Variant
Set VBComps = Wbk.VBProject.VBComponents
For Each VBComp In VBComps
Select Case VBComp.Type
Case 1 To 3
VBComps.Remove VBComp
Case Else
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next VBComp
End Sub
- toujours dans le même module, une seconde procédure qui s'occupe de
l'enregistrement des copies sous le nom souhaité et dans les répertoires
souhaités, et détruit le code des copies :
Sub testSave()
Dim Fich1$, Fich2$, Classeur As Workbook
Fich1 = "d:fsdataszazazaza1NomUtil_aaaaaa_0703.xls"
'(je te laisse le soin de la méthode pour obtenir le nouveau nom du
classeur)
ThisWorkbook.SaveCopyAs Fich1
Set Classeur = Workbooks.Open(Fich1)
DeleteAllVBA Classeur
Classeur.Close True
Fich2 = "d:fsdataszazazaza2NomUtil_aaaaaa.xls"
'(idem)
ThisWorkbook.SaveCopyAs Fich2
Set Classeur = Workbooks.Open(Fich2)
DeleteAllVBA Classeur
Classeur.Close True
End Sub
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Merci Frédéric,
j'ai 1 autre question à te poser.
Avec tes macros SaveAsSansMacro et SupCode, est- il possible de
sauvegarder
1 fichier xls de type Matrice_aaaaaa.xls
en 2 fichiers comme suit : NomUtil_aaaaaa_0703.xls
et NomUtil_aaaaaa.xls
et ds 2 répertoire différentes.
Merci d'avance.
@+
Seng
"Frédéric Sigonneau" a écrit dans le
message
de news:Bonsoir,
Pour l'extraction des éléments du nom des fichiers, tu peux aussi
utiliser
unepetite fonction VBA comme celle-ci :
Function DecoupeNomFich(s)
Dim Fichier, Arr
Fichier = Split(s, "")(UBound(Split(s, "")))
Fichier = Split(Fichier, ".")(0)
Arr = Split(Fichier, "_")
DecoupeNomFich = Arr
End Function
C'est une fonction matricielle.
Si tes noms de fichiers sont en colonne A, sélectionne les cellules
B1:D1
etsaisis
ÞcoupeNomFich(A1)
puis valide (Ctrl+Maj+Entrée) et recopie vers le bas autant que
nécessaire.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjou à tous,
J'ai besoin de vos lumières pour terminer 1 macro, en complément d'1
que
j'ai trouvé sur le forum ( il s'agit d'1 code de F.Sigonneau -
Recherche_fichier_sur_disque_. De passage, 1 gd merci à FS. çà
fonctionne àmerveille.
Je reviens à mes questions :
1°) Est - il possible avec :
.LookIn de chercher sur plusieurs répertoire , ex : "C:mes
documentsMesFichiers", "C:mes documentsExcel" etc...
Est ce que je peut utiliser ChDir "C:mes Documents......."
2°) D'après le code de FS, ts les fichiers trouvés sur le disque dur
sontcopiés sur 1 feuille. Et de là, je souhaiterais récupérer le nom de
l'utilisateur, nom du fichier et la date de sauvegarde sur 3
colonnes
distincts, disant sur les colonnes
H à J de la même feuille.
exemple : c:mes documentsexcelaaaaaa_10000_0703.xls ==> nom > > aaaaaa ,
nom fichier = 10000, date = 0703
et comparer avec 1 feuille de donnée qui ressemble comme suit :
A B C D
EF G H I
Nom Utilisateur 10000 10001 10002 10003 10004
1000510006 10007
si sur la feuille d'extraction, il existe le même utilisateur aaaaaa
et
lefichier 100000 à 100007, la date de création 0703 ou autres
s'affichent
dsles colonnes correspondantes sur la feuille de données.
pr l'extraction, j'ai pensé au =si(gauche(plage de données) ou
si(mid(plagede données) ou si(droite(plage de données), mais c là que je
patauge,
puisque les noms des utilisateurs n'ont pas les mêmes nombres de
caractères,ils varient de 4 caractères à plus de 10 et il aura au moins 50
utilisateurs.
Je travaille sur xl 2000 et j'espère que je suis assez clair ds mon
explication.
Merci de vos aides.
@+
Seng