Une macro qui doit nommer des PDF sur 7 positions

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Bernard-Louis

XLDnaute Occasionnel
Bonjour a toutes et tous,

Un probleme que je n’arrive pas a resoudre malgre plusieurs essais.
Cette macro transforne des fiches en PDF avec comme nom du PDF, le code de la feuille « Fiche » Cells(12,70) Ce code peut-etre sur 1 ou 2 ou 3 ou 4 ou 5 ou 6 positions EX : 1 ; 23 ; 345 etc..
Mon probleme est que : Le nom du PDF doit imperativement etre sur 7 positions : exemple :0012345.

J’ai rajoute un 0 a la fin de ( Name……………………….Fichier par code\0) C’est OK si le nom d’origine comporte deja 6 chiffres, mais si il en comporte 5 il en manque 1.
Quelqu’un aurait il une solution miracle ?
Merci en attendant le bon samaritain.
Cordialement
Voici le code de la macro :

Sub edition_total_Code()

i = 2

For i = 2 To 100000

If Feuil5.Cells(i, 1) = "" Then
Exit For
End If
Cells(12, 70) = Feuil5.Cells(i, 1)
ActiveWindow.SelectedSheets.PrintOut
Application.Wait (Now + TimeValue("0:00:05"))

Name "C:\Documents and Settings\" & Application.UserName & "\Mes Documents\FICHE.pdf" As "\\XXX\YYYYYYY\ZZZZZZZZZZZ\CICES\\Fichier par code\0" & Cells(12, 70) & ".pdf"



Next i

End Sub
 
Re : Une macro qui doit nommer des PDF sur 7 positions

Bonsoir,

tu ajoutes une vérification de nombre de caractères pour la cellule Cells(12, 70) pour mettre soit 1 ou 2 "0" au nom du fichier:

Code:
If Len(Cells(12, 70)) = 5 Then
    Name "C:\Documents and Settings\" & Application.UserName & "\Mes Documents\FICHE.pdf" As "\\XXX\YYYYYYY\ZZZZZZZZZZZ\CICES\\Fichier par code\00" & Cells(12, 70) & ".pdf"
ElseIf Len(Cells(12, 70)) = 6 Then
    Name "C:\Documents and Settings\" & Application.UserName & "\Mes Documents\FICHE.pdf" As "\\XXX\YYYYYYY\ZZZZZZZZZZZ\CICES\\Fichier par code\0" & Cells(12, 70) & ".pdf"
End If
 
Re : Une macro qui doit nommer des PDF sur 7 positions

Un point de détail
Code:
Sub Tst()
Dim s As String, sEnv As String
Dim sProf As String
    '   Correspond à : Menu Excel : ? A propros de Microsoft Excel Licence acoordée à
    '   ou Outils Options Général Nom d'utilisateur
    s = Application.UserName
    '   Variable d'environnement : Nom de LOGIN de l'utilisateur sous Windows
    sEnv = Environ("USERNAME")
    sProf = Environ("USERPROFILE")
    MsgBox s & vbCrLf & sEnv & vbCrLf & sProf
End Sub
 
Dernière édition:
Re : Une macro qui doit nommer des PDF sur 7 positions

Bonjour,
Je remercie Kiki29 et Skoobi. Ca fonctionne tres bien.
J'avais contourne le probleme par formule. C'est a dire si je saisi le code d'origine en BR12 avec 1 ou 2 ou 3 .......chiffres, dans la cellule suivante BS12 je la definie par INSERTION, NOM, DEFINIR =CODE, puis je mets cette formule :
=SI(NBCAR(CODE)=1;"000000"&CODE;SI(NBCAR(CODE)=2;"00000"&CODE;SI(NBCAR(CODE)=3;"0000"&CODE;SI(NBCAR(CODE)=4;"000"&CODE;SI(NBCAR(CODE)=5;"00"&CODE;SI(NBCAR(CODE)=6;"0"&CODE;CODE))))))

et il ne me reste qu'a modifier la macro pour imprimer en PDF à partir de la ligne 12 et colonne 71.
Je vous remercie pour votre aide précieuse.
Bonne journée.
Cordialement
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
1 K
Réponses
8
Affichages
1 K
Réponses
3
Affichages
1 K
Retour