Bonjour,
Je ne comprends pas car mon code ne fonctionne plus. Il a fonctionné au début mais d'un coup il ne veut plus...
Est-ce que quelqu'un peut m'aider à comprendre ?
Merci
Matrice facture (MDP_Forever2019) v1.xlsm
Bonjour,
Je ne comprends pas car mon code ne fonctionne plus. Il a fonctionné au début mais d'un coup il ne veut plus...
Est-ce que quelqu'un peut m'aider à comprendre ?
Merci
Matrice facture (MDP_Forever2019) v1.xlsm
Voici votre code corrigé (Voir fichier en annexe):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 Sub EnregistreFacture() 'Déclaration des variables Dim NomDossier As String Dim CheminDossier As String 'Nom de dossier 'Utilisez plutôt "Nom du fichier" car "dossier" fait allusion à un répertoire (ou chemin) NomDossier = Application.InputBox("Nom du fichier :", "Fichier") CheminDossier = "C:\Users\Cyril\Documents\Audrey\Forever\Factures\Factures clients\2019" & NomDossier & "\" 'Enregistrement au format PDF ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ CheminDossier & "Facture_" & Range("H4").Value & " - " & Range("C12").Value & ".pdf", quality:= _ xlQualityStandard, includedocproperties:=True, ignoreprintareas:=False, _ from:=1, to:=1, openafterpublish:=True 'On réinitialise et on incrémente le numéro de la facture With Sheets("Facture 2019") 'Le nom de votre feuille était "Facture", alors qu'elle s'appelle "Facture 2019" .Range("C12:C15").ClearContents 'Si les cellules sont fusionnées, cette opération ne fonctionnera pas. .Range("B19:F41").ClearContents .Range("H4").Value = .Range("H4").Value + 1 End With End Sub
Bonjour,
Si je puis me permettre, il faut éviter de "hardcoder" des chemins, nom de ficher à sauver, etc. comme par exempleEn privilégiant, une feuille contenant les paramètres (ou éventuellement fichier INI), on rend pérenne l'application.
Code : Sélectionner tout - Visualiser dans une fenêtre à part CheminDossier = "C:\Users\Cyril\Documents\Audrey\Forever\Factures\Factures clients\2019" & NomDossier & "\"
Philippe Tulliez
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier
Salut
100% d'accord avec Philippe
On nomme les plages, et on utilise les plages nommées dans le code.
"Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
---------------
Mes billets de blog sur DVP
Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
---------------
Bonsoir,
Désolé de vous répondre à cette heure. Merci à vous d'avoir répondu. Mais je suis vraiment débutant et vous m'avez déjà perdu
Mais j'ai toujours la même erreur :
capture ecran 2.docx
capture écran.docx
Est-ce que je fais mal quelque chose ?
Quand je clique sur le bouton, le pop up s'ouvre, je lui met "decembre", le dossier de destination du pdf. Et du coup, j'ai l'erreur...
J'ai trouvé, c'est à priori parcque j'ai rajouté "2019" à la fin de :
Code : Sélectionner tout - Visualiser dans une fenêtre à part CheminDossier = "C:\Users\Cyril\Documents\Audrey\Forever\Factures\Factures clients\2019" & NomDossier & "\"
Mais je ne comprends pas pourquoi, si quelqu'un peut m'expliquer ?
Bonjour,
est-ce que le répertoire 2019NomDossier existe ?
je ne crois pas,
"Je ne comprends pas pourquoi"... C'est toi qui a mis 2019 à la fin du chemin, puisque ce chemin est en dur dans ton code. Dès lors, nous saurions difficilement t'expliquer pourquoi tu as mis 2019 à la fin du chemin? Ta variable doit contenir le chemin exact du dossier dans lequel tu vas déposer ton fichier. C'est à toi de vérifier que ce que tu passes à ta variable est correct.
Une bonne façon de s'assurer de cela est d'ouvrir ton explorateur, d'aller sur le dossier concerné, et de copier l'adresse affichée dans la barre d'adresse. Tu la colles dans ton code sur la ligne de la valorisation de la variable, entre guillemets
"Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
---------------
Mes billets de blog sur DVP
Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
---------------
Bonjour,
J'avais bien créé le dossier 2019, j'avais fait un copier /coller du chemin dans le code, c'est pour ça que je ne comprends pas.
J'ai modifié le code en finissant par
Et là, tout fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part CheminDossier = "C:\Users\Cyril\Documents\Audrey\Forever\Factures\Factures clients 2019\" & NomDossier & "\"
Donc c'est résolu mais sans comprendre.
Tant pis, merci à tous pour m'avoir aider.
Bonjour,
le code (Factures clients et rattaché avec 2019)
Code : Sélectionner tout - Visualiser dans une fenêtre à part CheminDossier = "C:\Users\Cyril\Documents\Audrey\Forever\Factures\Factures clients 2019\" & NomDossier & "\"
n'est pas identique à celui-ci
et ici 2019 est rattaché avec NomDossier
Code : Sélectionner tout - Visualiser dans une fenêtre à part CheminDossier = "C:\Users\Cyril\Documents\Audrey\Forever\Factures\Factures clients\2019" & NomDossier & "\"
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager