Feuille de DEVIS automatisé
- Messages
- 1'123
- Excel
- 2013 FR
- Inscrit
- 18/09/2015
- Emploi
- Développeur Bureautique Indépendant (Excel)
Bonjour elec, (Grisan29)
J'interviens sur le fil pour apporter une correction à la liste de validation des clients (dans l'onglet DEVIS)
au lieu de =CLIENT!L2C1:C6C1 (ou plus)
il y a une façon de rendre (quasi) infini le nombre de clients
=DECALER( CLIENT!C1; 1 ; 0 ; NBVAL( CLIENT!C1) -1 )
qui permet toujours limiter la sélection au nombre réel de clients ! même en cas d'ajout !
Cependant je n'ai pas télécharger tes derniers fichiers (Grisan29) je ne sais donc pas si cela est la solution adopté dans
grisan29 a écrit :est ce que comme cela ça te vas pour les clients,il n'y avais qu'a augmenter le nombre dans la liste validation
- Messages
- 1'123
- Excel
- 2013 FR
- Inscrit
- 18/09/2015
- Emploi
- Développeur Bureautique Indépendant (Excel)
Bonjour elec, (Grisan29, BrunoM45)
Merci BrunoM45 pour la correction...
BrunoM45 a écrit :Petite rectification supplémentaire par rapport au post d'Andrea73 qui a commis une grosse erreur
je me suis encore mélangé les pinceaux avec la notation bataille navale, que je n'arrive décidemment pas à intégrer...
Par ailleurs je suis tout à fait d'accord (et adepte) du nom/formule, d'autant plus que le nom que tu utilises est dans la droite ligne des noms que j'utilise (faciles à retenir) ...
Bonsoir à vous, j'ai fais la modification je pense que c'est mieux ainsi.
Je joint le tableau avec quelque modification et pour avoir une idée au fur et à mesure,
Après quelques recherches j'ai pu adapter un bout de code qui ressemble à un début de ce que je souhaite,
Le bouton Enregistré le devis en PDF crée un fichier pdf de la feuille DEVIS dans l'emplacement Mes Documents.
Mais je souhaiterai modifier l'emplacement, la méthode de sauvegarde ainsi que le nom du fichier
MODULE 1
Sub Enregistrer_pdf()
'
' enregistrer_pdf Macro
'
'
Sheets("DEVIS").Select
ActiveWindow.SmallScroll Down:=-15
End Sub
MODULE 2
Sub Save_DEVIS()
'
' Save_DEVIS
'
Sheets("DEVIS").Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"2017XXX SOCIETE OBJET", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
False
Sheets("DEVIS").Select
End Sub
Bonjour Elec,
Tu as choisi de mettre la formule DECALER() directement dans la validation de données
C'est comme tu le souhaites, mais le jour ou tu auras un problème de sélection qui ne veut pas se faire... ne vient pas pleurer
Voici le code pour l'enregistrement du fichier à l'endroit souhaité avec le nom souhaité
Sub ImpressionPDF()
Dim sPath As String, sFileName As Variant
' Chemin d'enregistrement par défaut
sPath = ThisWorkbook.Path & "\"
' Demander le nom et le chemin de sauvegarde
sFileName = Application.GetSaveAsFilename(InitialFileName:=sPath & "2017XXX SOCIETE OBJET", _
FileFilter:="Fichier PDF (*.pdf), *.pdf", Title:="Nom et emplacement du nouveau fichier")
' Vérifier si le choix a été annulé
If sFileName = False Then
MsgBox "Vous avez annulé l'enregistrement du fichier", vbCritical + vbOKOnly, "ANNULATION ENREGISTREMENT"
Exit Sub
End If
' Si choix ok
Sheets("DEVIS").ExportAsFixedFormat Type:=xlTypePDF, FileName:=sFileName, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
' Petit message
MsgBox "Fichier : " & sFileName & " a été enregistré", vbInformation, "FICHIER ENREGISTRÉ"
End Sub
A+
Je ne vais pas pleuré lol.. Je pense avoir mal compris les explications alors ..
JE test merci, et pour la validation de donnée l'erreur et ou exactement ?
Edit : Après test du bout de code c'est dans la ligné de ce que je souhaite mais je peut incrémenter le champs du nom du fichier directement avec des données précise ? Comme le nom du client et l'objet ?
sachant que quand j'enregistre j'ai le mot Desktop qui s'enregistre ..
elec a écrit :Je ne vais pas pleuré lol.. Je pense avoir mal compris les explications alors ..
JE test merci, et pour la validation de donnée l'erreur et ou exactement ?
L'erreur est là
Il faut définir un nom (Exemple : ListeNomClient) et utiliser ce nom dans les données de validation
C'est tout, mais c'est mieux, crois en mon expérience
C'est bon j'ai fais la modification normalement c'est mieux la ?
Edit j'avais pas mis le bon fichier, la c'est mieux et c'est vrai que c'est plus simple pour après si ya des pb bien joué :
Je me demande quel et la meilleur méthode pour le choix de la TVA ?
Sachant que je switch entre TVA 10 ou 20 donc j'ai la formule =G32*(10/100) qui récupère le prix HT et donne le prix TTC en G34 avec la formule =SOMME(G32+G33).
Sauf qu'il faut que je puisse également modifier l'affichage en A33 qui indique quel est le taux de TVA => TVA 10% / TVA 20%
RE,
Question
elec a écrit :Je me demande quel et la meilleur méthode pour le choix de la TVA ?
Sachant que je switch entre TVA 10 ou 20 donc j'ai la formule =G32*(10/100) qui récupère le prix HT et donne le prix TTC en G34 avec la formule =SOMME(G32+G33).
Sauf qu'il faut que je puisse également modifier l'affichage en A33 qui indique quel est le taux de TVA => TVA 10% / TVA 20%
Est-ce que tous tes articles sont forcément à 10 ou à 20%, tu n'as pas du panachage parfois !?
Sinon, voici ton fichier modifié
A+
Hahaha aucun panachage, j'applique la TVA 10 pour les particulier et 20 pour les professionnel !!
Merci pour la modif Bruno !
Pour la TVA c'est parfait c'est exactement ce que je voulais. Juste une question pour l'ajout de ligne. Actuellement la ligne s'ajoute en avant dernière dans le tableau il est possible que l'ajout se fasse à la fin ? car si je remplie le tableau et que j'ajoute une ligne sa la crée au dessus d'un article :s
Pour l'enregistrement, je pense que je devrai faire autrement.
Mon architecture aujourd'hui elle est comme sa :
2017 (présent sur le bureau C:\Utilisateur\Admin\2017)
2017 DEVIS
-> SOUS DOSSIER PDF
2017 FACTURE
-> SOUS DOSSIER PDF
2017 IMPAYEE (copie des facture format pdf)
Le problème c'est que j'ai donc toute l'année dans le même dossier et quand je cherche parfois des choses c'est fastidieux mais à un point inimaginable.
L'idée serai que lorsque je crée un devis, que au moment de l'enregistrement ont vérifie la date du jour si le dossier du mois n'est pas crée qu'il le soit et que le fichier soit stocker dans les 2 format nécessaire.
En gros quand j'enregistre si pas de JANVIER alors ont le crée le dossier et on enregistre format xl dans DEVIS -> JANVIER et pdf dans DEVIS -> JANVIER -> PDF
Ou pour une facture
si pas de JANVIER alors ont crée le dossier et on enregistre format xl dans FACTURE -> JANVIER, pdf dans FACTURE -> JANVIER -> PDF et une copie dans IMPAYEE ou la il n'y à pas de classement par mois mais tout ce qui permet directement de supprimé celles qui seront payer
Re,
Ok vu pour la ligne à ajouter
Pour l'enregistrement, tu ne gardes que le PDF !?
Si tu as un devis à modifier, tu re-saisies tous ?
A+
Nn justement pour l'enregistrement il dois se faire dans les 2 format xl et pdf
Le XL se place dans DEVIS -> JANVIER et le PDF dans DEVIS -> JANVIER -> PDF
Seul le dossier IMPAYEE ne contient que les pdf tous dans le même dossier pour que jpuisse directement les supprimé inutile donc que jfasse un classement par mois
Déjà j'utiliser jusqu'à présent une méthode plus que archaïque si encore fo tt re saisir je saute par la fenetre
Re,
En attendant, question : le nom de ton fichier tu ne voudrais pas le créer à partir des éléments que tu as dans ton devis, plutôt que de saisir la valeur dans la boite de dialogue ?
A+
Par la boite de dialogue c'est ce que je fais depuis le début, donc le meilleur c'est de récupérer les informations dans le devis ou la facture
Par la boite de dialogue c'est ce que je fais depuis le début, donc le meilleur c'est de récupérer les informations dans le devis ou la facture