Microsoft 365 vba format date et N° automatique

974RE

XLDnaute Occasionnel
Bonsoir le forum,
Une fois de plus je fais appel à vous.
Je rencontre 2 problèmes que je n'arrive pas à résoudre:
1° Sur mes USF Visualiser et Modifier, mes textBox Heures ne s'affiche pas au format hh:mm bien que j'ai précisé ce format.
2° je n'arrive pas à l'ouverture de l'USF Devis à ce qu'il me donne automatiquement le N° Suivant qui devrait être 2021-002 puis au prochain devis 2021-003...
Auriez-vous la gentillesse de bien vouloir m'aider s'il vous plaît.
Je sais pouvoir compter sur votre aide.
Merci d'avance!
 

Pièces jointes

  • Essai CL1 Copie.xlsm
    182.4 KB · Affichages: 182
Solution
Bonjour 974RE, Yeahou, le fil,

tu as écrit : « Je crois que Soan à raison, aujourd'hui je coupe: plage, déjeuner les pieds dans l'eau, sieste et......je reprends! »

quoi ? t'as déjà fini d'faire trempette ? 😱 ben t'as pas nagé bien longtemps, dis donc ! tu pourras jamais rattraper Laure Manaudou si tu t'entraînes aussi peu ! 😁 😄 😂 bon, t'as d'la chance, regarde, elle t'attend :

Regarde la pièce jointe 1100325



tu as aussi écrit : « Je vais de ce pas décortiquer tes codes. » ; ben ça non plus ça t'a pas pris bien longtemps ! moi qui croyais qu'on t'reverrai plus avant un mois ou deux ! 😁 🤣 🤣 🤣 bon, c'est vrai qu'mes codes sont très faciles à comprendre, et en plus c'est comme les crêpes : c'est bien plus...​
Bonjour 974RE, soan, le fil, le forum, etc...

voila ta sub modifiée

Cordialement
VB:
Private Sub CreerPDF_Click()
Dim monDossier As String, monFichier As String


    monDossier = "D:\Les Authentiques\Archive Devis\"
    monFichier = ThisWorkbook.Sheets("Devis").Range("C4").Value & " " & ThisWorkbook.Sheets("Devis").Range("C6").Value & ".PDF"
   
    ThisWorkbook.Sheets("Devis").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        monDossier & monFichier, Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=False
 
End Sub
 
en ajoutant la date du devis, ça peut servir !
Code:
Private Sub CreerPDF_Click()
Dim monDossier As String, monFichier As String
    monDossier = "D:\Les Authentiques\Archive Devis\"
    With ThisWorkbook.Sheets("Devis")
        monFichier = .Range("C4").Value & " " & .Range("C6").Value & " " &  Format(.Range("C2").Value, "DD-MM-YYYY") & ".PDF"
        .ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        monDossier & monFichier, Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=False
    End With
End Sub
 

974RE

XLDnaute Occasionnel
en ajoutant la date du devis, ça peut servir !
Code:
Private Sub CreerPDF_Click()
Dim monDossier As String, monFichier As String
    monDossier = "D:\Les Authentiques\Archive Devis\"
    With ThisWorkbook.Sheets("Devis")
        monFichier = .Range("C4").Value & " " & .Range("C6").Value & " " &  Format(.Range("C2").Value, "DD-MM-YYYY") & ".PDF"
        .ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        monDossier & monFichier, Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=False
    End With
End Sub
Bonsoir Yeahou,
Merci beaucoup d'être intervenu sur mon échange avec Soan, et de m'apporter LA solution.
Je comprends bien où était mon erreur. J'avais tenté avec Range, mais je n'ai pas pensé à lui indiquer la feuille. Comme j'étais sur la feuille en question. L'idée de la date est plus qu'intéressante, dans la mesure ou ma prochaine étape est de mettre en place un devis "Modifié" . 👍
Merci encore.
 

974RE

XLDnaute Occasionnel
Bonjour 974RE,

désolé, mais les fichiers pdf j'm'y connais pas, à part les lire avec Adobe Reader. :confused:

soan
Salut Soan, ne soit pas désolé. Tu m'as énormément apporté. Sans toi j'étais encore en pleine galère. J'ai beaucoup appris avec toi, même si je ne maîtrise pas tout, loin s'en faut.
Je pense que tu auras encore beaucoup à m'apporter si tu le veux toujours. En tout cas, pour ma part je compte beaucoup sur toi.
Un nouveau bienfaiteur m'a gentiment apporté la solution.
Bonne soirée, à Bientôt.
 
974RE,

ton erreur n'était pas sur range mais sur la façon dont tu as codé
VB:
monFichier = "Cells[C4].Select & Cells[C6].Select.PDF"
tel que codé, ton nom de fichier est "Cells[C4].Select & Cells[C6].Select.PDF"
cela ne peut pas passer avec des caractères interdits
ce code écrit plus correctement aurait fonctionné si la feuille active derrière l'USF était Devis mais, moi, je n'utilise jamais l'évaluation (les croches) par habitude et par conviction.
Code:
monFichier = [C4] & [C6] & ".PDF"

Bien cordialement, @+
 
Dernière édition:

974RE

XLDnaute Occasionnel
ton erreur n'était pas sur range mais sur la façon dont tu as codé
VB:
monFichier = "Cells[C4].Select & Cells[C6].Select.PDF"
ce code écrit plus correctement aurait fonctionné si la feuille active derrière l'USF était Devis mais, moi, je n'utilise jamais l'évaluation (les croches) par habitude et par conviction.
Code:
monFichier = [C4] & [C6] & ".PDF"

Bien cordialement, @+
Ok, bien compris. Pour ton information je débute en VBA, ce qui explique cela.
Merci encore.
Bonne soirée à toi.
 

974RE

XLDnaute Occasionnel
j'avais compris et soan avait déja fait un gros boulot, c'aurait été dommage de ne pas finaliser
Oh OUI Soan a fait un sacré boulot. Je ne le remercierais jamais assez. Il s'est totalement investi pour m'accompagner dans ce projet.
Grâce à ce projet, j'ai fait la rencontre de deux belles personnes Soan et PatickToulon (dont je n'ai plus de nouvelles et je le regrette), et aujourd'hui tu viens rejoindre l'équipe. Une belle personne de plus je pense.
Mon projet n'est pas fini, il me reste à construire un devis qui doit permettre de modifier le Devis Initial en cas de demande de modification du client et bien sur la facture. Mes neurones, et les vôtres n'ont pas fini de s'agiter!
 

974RE

XLDnaute Occasionnel
Salut Soan, ne soit pas désolé. Tu m'as énormément apporté. Sans toi j'étais encore en pleine galère. J'ai beaucoup appris avec toi, même si je ne maîtrise pas tout, loin s'en faut.
Je pense que tu auras encore beaucoup à m'apporter si tu le veux toujours. En tout cas, pour ma part je compte beaucoup sur toi.
Un nouveau bienfaiteur m'a gentiment apporté la solution.
Bonne soirée, à Bientôt.
Bonjour Soan,
Comme je le pressentais, je fais de nouveau appel à toi. Je travaille sur le Devis Modifié qui permet de modifier le Devis initial (dans le cas ou le client demande de lui fournir un nouveau devis: par exemple : il avait demandé initialement un devis pour 2 voitures et il change d'avis il ne souhaite plus qu'une seule voiture, avec des changement de trajets....).
L'organisation du Devis Modifié ne change pas. Je récupère les informations de la Feuille A.DV et les charges sur la feuille DevisModifié. J'apporte les changements et je valide. Dans l'absolu, les changements qui justifieraient d'établir un nouveau Devis concerneraient les Zones Prise En Charge, Trajet , Fin de Course et la Désignation, Qté.......
Ma difficulté consiste à rapatrier les modifications apportées de nouveau dans la feuille A.DV, dans la ligne concernée: DEV2021-001 si les modifications portent sur ce devis. La Date Modif (C1) est la date du jour du DevisModifié. Seuls les champs des colonnes H / I / J de la Feuille A.DV sont susceptible d'être modifiés, ainsi que les colonnes B / C / D / E de la feuille A.LD. Le devis modifié n'est pas un nouveau devis, c'est le devis initial à qui ont apporte des modifs.
Lorsque je mettrais en place la facture, l'ensemble des éléments de la feuille A.DV et A.LD du numéro de devis concerné sera chargé sur la Facture.
Dans l'attente de ton retour, merci Soan.
 

Pièces jointes

  • Essai CL5.xlsm
    259 KB · Affichages: 6

974RE

XLDnaute Occasionnel
Bonjour Soan,
Comme je le pressentais, je fais de nouveau appel à toi. Je travaille sur le Devis Modifié qui permet de modifier le Devis initial (dans le cas ou le client demande de lui fournir un nouveau devis: par exemple : il avait demandé initialement un devis pour 2 voitures et il change d'avis il ne souhaite plus qu'une seule voiture, avec des changement de trajets....).
L'organisation du Devis Modifié ne change pas. Je récupère les informations de la Feuille A.DV et les charges sur la feuille DevisModifié. J'apporte les changements et je valide. Dans l'absolu, les changements qui justifieraient d'établir un nouveau Devis concerneraient les Zones Prise En Charge, Trajet , Fin de Course et la Désignation, Qté.......
Ma difficulté consiste à rapatrier les modifications apportées de nouveau dans la feuille A.DV, dans la ligne concernée: DEV2021-001 si les modifications portent sur ce devis. La Date Modif (C1) est la date du jour du DevisModifié. Seuls les champs des colonnes H / I / J de la Feuille A.DV sont susceptible d'être modifiés, ainsi que les colonnes B / C / D / E de la feuille A.LD. Le devis modifié n'est pas un nouveau devis, c'est le devis initial à qui ont apporte des modifs.
Lorsque je mettrais en place la facture, l'ensemble des éléments de la feuille A.DV et A.LD du numéro de devis concerné sera chargé sur la Facture.
Dans l'attente de ton retour, merci Soan.
Bonsoir Soan,
Je pense avoir réussi à élaborer les codes pour rendre opérationnel ma feuille DevisModifié. J'ai également réussi, je pense à mettre en place la facturation.
Aurais-tu la gentillesse d'y jeter un œil et de me faire un retour s'il te plaît?
Avec tous mes remerciements.
 

974RE

XLDnaute Occasionnel
Oh OUI Soan a fait un sacré boulot. Je ne le remercierais jamais assez. Il s'est totalement investi pour m'accompagner dans ce projet.
Grâce à ce projet, j'ai fait la rencontre de deux belles personnes Soan et PatickToulon (dont je n'ai plus de nouvelles et je le regrette), et aujourd'hui tu viens rejoindre l'équipe. Une belle personne de plus je pense.
Mon projet n'est pas fini, il me reste à construire un devis qui doit permettre de modifier le Devis Initial en cas de demande de modification du client et bien sur la facture. Mes neurones, et les vôtres n'ont pas fini de s'agiter!


j'avais compris et soan avait déja fait un gros boulot, c'aurait été dommage de ne pas finaliser
Bonsoir Yeahou,
Je me permets de faire appel à toi pour jeter un œil sur mon fichier . Comme Soan m'avait suivi jusqu'à maintenant je l'avais sollicité, mais il n'est malheureusement pas dispo en ce moment.
Alors comme tu avais eu la gentillesse d'intervenir sur mon projet en m'apportant ton aide, je me suis autorisé à faire appel à toi dans la mesure où tu le connais déjà.
J'avais éprouvé quelques difficultés à archiver mon devis modifié, mais j'ai fini, je pense à y arriver. J'ai également mis en place la facturation et son archivage.
J'ai donc besoin d'un œil expert pour vérifier si je n'ai pas commis d'erreurs susceptibles d'entraîner un beug à un moment donné .
Si tu veux bien, n'hésite pas à me proposer mieux, je suis preneur.
Merci d'avance.
 

Pièces jointes

  • Essai CL5.xlsm
    321.5 KB · Affichages: 10
Bonjour 974RE, le forum

j'ai regardé ton fichier
pour tes archivages, tu sortais de la fonction si [B4] vide hors le numéro est en [C4]
j'ai aussi modifié tes générations de PDF pour m'éviter des erreurs, tes dossiers n'existent pas chez moi
j'ai modifié l'appel de tes formulaires dans accueil pour exemple
pour la modification d'un devis existant, il faut reprendre, cela ne peut pas fonctionner comme cela.
précises comment tu veux gérer la modification, nouvelle ligne de devis avec nouvelle référence ou modification de la ligne existante en adoptant une convention pour indiquer la modif?
pas le temps de faire cela ce matin, j'essaierai de m'y coller dans la journée

Cordialement, @+
 

Pièces jointes

  • Essai CL5 - Copie.xlsm
    336.9 KB · Affichages: 5
Dernière édition:

974RE

XLDnaute Occasionnel
Bonjour 974RE, le forum

j'ai regardé ton fichier
pour tes archivages, tu sortais de la fonction si [B4] vide hors le numéro est en [C4]
également, tes rows.count n'avaient pas le point nécessaire pour se référer à ton with et retournaient les lignes de la feuille active ce qui aurait fini par poser problème quand le nombre d'archivage aurait dépassé le nombre de lignes utilisé dans les feuilles devis, devis modifié et facture
j'ai aussi modifié tes générations de PDF pour m'éviter des erreurs, tes dossiers n'existent pas chez moi
j'ai modifié l'appel de tes formulaires dans accueil pour exemple
pour la modification d'un devis existant, il faut reprendre, cela ne peut pas fonctionner comme cela.
précises comment tu veux gérer la modification, nouvelle ligne de devis avec nouvelle référence ou modification de la ligne existante en adoptant une convention pour indiquer la modif?
pas le temps de faire cela ce matin, j'essaierai de m'y coller dans la journée

Cordialement, @+
Bonjour Yeahou, le Forum,
Tout d'abord merci de me consacrer un peu de ton temps.
Les modifications apportées aux lignes de codes sont 👍 Je me doutais bien qu'il fallait affiner tout ça.
Bien vue pour [B4]. Par contre je n'ai pas compris les problèmes liés aux rows.count????
Les générations de PDF sont TOP!!:):):)
Concernant les modifications d'un devis existant: un client fait la demande d'un devis pour 2 véhicules (ou plus: aujourd'hui il y a 2 véhicules anciens dans le parc, mais l'acquisition d'un troisième devrait se faire: une DS 21). On lui établit donc un devis pour 2 Véhicules. A réception de ce devis le client demande à modifier le nombre de véhicule, ou le parcours initialement demandé (plus ou moins de Km à parcourir, donc modification des tarifs). Il sera alors nécessaire de modifier le devis initial (à sa signature, le devis vaudra Bon de Commande). Le N° du Devis ne change pas, donc: modification de la ligne archivée. L'archivage me sert également à établir la facture. La facture n'est qu'une récupération des éléments de la ligne archivée.
Mais ta remarque fait apparaître une problématique que je n'avais pas vue: Si le devis comporte 2 lignes Désignation ( 504 et MG) et il demande de modifier son devis avec un seul véhicule: comment supprimer le deuxième véhicule?
De plus, lors de la récupération l'USF Devis Modifié ne prend en compte que la première ligne désignation de la feuille A.LDV.
Quand on croit qu'il n'y en plus, il y en a encore! (proverbe de chez nous).
Dans l'attente de ton retour, bonne après-midi à toi.
 

Discussions similaires

Réponses
3
Affichages
332

Statistiques des forums

Discussions
315 134
Messages
2 116 614
Membres
112 812
dernier inscrit
jocelyne86360