Probleme enregistrement pdf nom variable sous excel 2007 VBA
Résolu yanndebretagn Messages postés 100 Date d'inscription Statut Membre Dernière intervention -
yanndebretagn Messages postés 100 Date d'inscription Statut Membre Dernière intervention - 2 nov. 2019 à 18:54
yanndebretagn Messages postés 100 Date d'inscription Statut Membre Dernière intervention - 2 nov. 2019 à 18:54
A voir également:
- Probleme enregistrement pdf nom variable sous excel 2007 VBA
- Save as pdf office 2007 - Télécharger - Bureautique
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Liste déroulante excel - Guide
- Enregistrer en pdf - Guide
- Word et excel gratuit - Guide
2 réponses
je me répond
résolu partiellement
ok pour une feuille
mais pour les 4
SOLUTION 1: recopier le code 4 fois
ou y a t'il moyen d'intégrer tous ça dans un seul et même code?
mon précieux
merci
résolu partiellement
ok pour une feuille
mais pour les 4
SOLUTION 1: recopier le code 4 fois
ou y a t'il moyen d'intégrer tous ça dans un seul et même code?
mon précieux
Sub devis_quincaillerie_pdf()
Application.DisplayAlerts = False
Dim Chemin As String
Dim Fichier As String
Dim rep As String
Dim Dossier As String
Dim sousdossier As String
Chemin = "C:\s\Yann\Documents\xxxxxxxxx\devis\"
Dossier = Sheets("renseignement client").Range("B27").Value & " " & Sheets("renseignement client").Range("B26").Value
sousdossier = Sheets("renseignement client").Range("B22").Value & " " & Sheets("renseignement client").Range("B25").Value & " " & Sheets("renseignement client").Range("B27").Value & " " & Sheets("renseignement client").Range("B29").Value
On Error Resume Next
Chemin = Chemin & Dossier & "\" & sousdossier & "\"
Sheets("quincailleries pour pdf").Copy
Fichier = Sheets("quincailleries pour pdf").Range("A15") & ".Pdf"
With ActiveWorkbook
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & Fichier, Quality:=xlQualityStandard, _
IncludeDoroperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
.Close savechanges:=False
Application.DisplayAlerts = True
End With
End Sub
merci
Bonjour,
il faut mettre en paramètre ton range dans la procédure:
https://docs.microsoft.com/fr-fr/dotnet/visual-basic/programming-guide/language-features/procedures/sub-procedures
'ton code en changeant "A15" par macellule
End sub
ensuite pour chaque enregistrement tu n'a plus qu"a appeler ta procédure en changeant ton range comme ceci:
Voilà c'est simple!
il faut mettre en paramètre ton range dans la procédure:
https://docs.microsoft.com/fr-fr/dotnet/visual-basic/programming-guide/language-features/procedures/sub-procedures
Sub devis_quincaillerie_pdf(macellule As Range))
'ton code en changeant "A15" par macellule
End sub
ensuite pour chaque enregistrement tu n'a plus qu"a appeler ta procédure en changeant ton range comme ceci:
devis_quincaillerie_pdf("A15")
Voilà c'est simple!
Pour faire la même chose avec les feuilles il faut prendre leurs numéros, ensuite pour la cellule, la ligne et la colonne.
Dans mon exemple j'ai ajouté une valeur à mettre dans les cellules concernées:
Voir ceci pour te repérer dans l'index(numéro) de la feuille
https://silkyroad.developpez.com/VBA/FeuilleDeCalcul/
Voilà si cela peut te servir à l'avenir
@+ Le Pivert
Dans mon exemple j'ai ajouté une valeur à mettre dans les cellules concernées:
Option Explicit Private Sub CommandButton1_Click() Call devis_quincaillerie_pdf(1, 10, 10, 18254) 'numero feuille 1, ligne 11, colonne 11,valeur en K11 Call devis_quincaillerie_pdf(2, 5, 5, 18255) 'numero feuille 2, ligne 6, colonne 6,valeur en F6 Call devis_quincaillerie_pdf(3, 2, 2, 18256) 'numero feuille 3, ligne 3, colonne 3,valeur en C3 End Sub Sub devis_quincaillerie_pdf(mafeuille As Integer, l As Integer, c As Integer, Nb1 As Long) Worksheets(mafeuille).Select Range("A1").Select ActiveCell.Offset(l, c).Value = Nb1 End Sub
Voir ceci pour te repérer dans l'index(numéro) de la feuille
https://silkyroad.developpez.com/VBA/FeuilleDeCalcul/
Voilà si cela peut te servir à l'avenir
@+ Le Pivert
il est de loin préférable de ne pas recopier le code.
Quels sont les éléments qui changent entre les 4 exécutions?
Une technique habituelle est de créer une routine contenant les actions à faire, que tu appelleras 4 fois en lui ant les éléments variables.
à toi donc de décrire précisément les actions à répéter, et ce qui change.