Problème lors de la copie + enregistrement pdf
Paritec,
j'ai continué à test, à adapter au besoin le reste, je bloque sur une 'ERREUR DE COMPILATION - VARIABLE NON DÉFINIE" sur ma macro
Cmd_Recap_Vente_Click() or selon moi elle est définie :
Dim Hs_Code As Double
Hs_Cod = Cel.Offset(0, 47).Value
Cells(DLig, 10).Value = Hs_Cod
mais comme excel ne se trompe jamais, pourrais tu m'expliquer mon erreur ?
pour les dates, on peut rajouter un calendrier dans les colonne AB ; AH ; AP ; AQ ; AT ; AW ?
tu penses possible de rajouter la mention "DEPART FC" lorsque un recap s'édite, renseigner cette mention dans la date correspondant à ma date d'expédition de ma feuille calendrier que je joints et de pouvoir y ajouter une note ensuite ?
comment faire ?
sinon le reste est juste parfait, je te remercie infiniment pour ton aide
Pipin54000
Re bonjour Pinpin54000 le forum
Tu as la tête dur ou tu le fais exprès???
Je t’ai modifié une macro pour te montrer que tes multiples variables SONT INUTILES
il te suffit de prendre exemple sur la Macro que je t’ai fait et tu n’auras plus de soucis de variables
Puisque tu n’en auras pratiquement, plus sauf l’indispensable
A plus
Papou
paritec,
j'ai tout les défauts du monde sauf la tête dur, j'ai seulement besoin d'explications !
ok je vais pencher sur le sujet !
tu aurais une idée pour le calendrier ?
merci de ta réponse
Pipin54000
paritec,
comme tu peux voir si dessous j'ai bossé sur ton code, je ne suis pas qu'un bon à rien à attendre que du tout cuit !
enfin bref, passons ; j'ai une erreur de compilation lorsque je fais du pas à pas : une idée ?
ou est ce que j'ai merdé ?
en attendant ton retour, merci des efforts que tu fais pour m'expliquer les choses
a te lire
Pipin54000
Private Sub Cmd_Recap_Vente_Click()
Dim Cel As Range, DLig&, dest$, inco$, x&, nom$
If Txt_Num_DT.Value = "" Then Exit Sub
Application.ScreenUpdating = False
Sheets("111").Range("E1,E2,E3,E4,E5,I4,M3,M4,H27,H28,B30,B31,B32,B33,B34,G30,G31,G32,G33,G34,D36,H39,H40,C41,C42,C43,C45,C49,C54,C55,H54,H55").ClearContents
Sheets("1").Activate
For Each Cel In Range("G6:G" & Range("G6" & Rows.Count).End(3).Row)
If Cel.Value = CDbl(Txt_Num_DT.Value) Then
DLig = Sheets("111").Range("A26").End(xlUp).Row + 1
If DLig > 11 Then x = 1 Else x = x + 1
Sheets("111").Cells(DLig, 2) = x
Sheets("111").Cells(DLig, 3).Value = Cel.Offset(0, 8).Value ' =Desi_March
Sheets("111").Cells(DLig, 6).Value = Cel.Offset(0, 9).Value ' =Long_March
Sheets("111").Cells(DLig, 7).Value = Cel.Offset(0, 10).Value ' =Larg_March
Sheets("111").Cells(DLig, 8).Value = Cel.Offset(0, 11).Value ' =Haut_March
Sheets("111").Cells(DLig, 9).Value = Cel.Offset(0, 12).Value ' =Poids_March
Sheets("111").Cells(DLig, 10).Value = Cel.Offset(0, 47).Value ' =Hs_Cod
Sheets("111").Cells(DLig, 11).Value = Cel.Offset(0, 46).Value ' =Val_March
Sheets("111").Range("D1").Value = Cel.Offset(0, -5).Value ' = Suivi_Par
Sheets("111").Range("D2").Value = Cel.Offset(0, -4).Value ' =Demandeur
Sheets("111").Range("D3").Value = Cel.Offset(0, -2).Value ' =Date_Lance
Sheets("111").Range("D4").Value = Cel.Offset(0, 0).Value ' =Num_DT
Sheets("111").Range("D5").Value = Cel.Offset(0, 1).Value ' =Num_OF
Sheets("111").Range("L3").Value = Cel.Offset(0, 14).Value ' =Repart_Tps
Sheets("111").Range("G3").Value = Cel.Offset(0, 7).Value ' =Client
Sheets("111").Range("L4").Value = Cel.Offset(0, 13).Value ' =Cout_Tps
inco = Cel.Offset(0, 4).Value: dest = Cel.Offset(0, 5).Value ' = Incoterm + Destination
Sheets("111").Range("D37").Value = Cel.Offset(0, 17).Value ' =Transporteur_Route
Sheets("111").Range("G28").Value = Cel.Offset(0, 18).Value ' =Num_CDE_Route
Sheets("111").Range("G29").Value = Cel.Offset(0, 19).Value ' =Prix
Sheets("111").Range("B31").Value = Cel.Offset(0, 20).Value ' =Expedi
Sheets("111").Range("B32").Value = Cel.Offset(0, 21).Value ' =Date_Charg
Sheets("111").Range("B33").Value = Cel.Offset(0, 22).Value ' =Heur_Charg
Sheets("111").Range("B34").Value = Cel.Offset(0, 23).Value ' =Cod_Post_Charg
Sheets("111").Range("B35").Value = Cel.Offset(0, 24).Value ' =Vill_Charg
Sheets("111").Range("B36").Value = Cel.Offset(0, 25).Value ' =Pays_Charg
Sheets("111").Range("F31").Value = Cel.Offset(0, 26).Value ' =Desti
Sheets("111").Range("F32").Value = Cel.Offset(0, 27).Value ' =Date_Liv
Sheets("111").Range("F33").Value = Cel.Offset(0, 28).Value ' =Heur_Liv
Sheets("111").Range("F34").Value = Cel.Offset(0, 29).Value ' =Cod_Post_Liv
Sheets("111").Range("F35").Value = Cel.Offset(0, 30).Value ' =Vill_Liv
Sheets("111").Range("F36").Value = Cel.Offset(0, 31).Value ' =Pays_Liv
Sheets("111").Range("C49").Value = Cel.Offset(0, 32).Value ' = Nom Transitaire
Sheets("111").Range("G41").Value = Cel.Offset(0, 33).Value ' =Num_CDE_Transit
Sheets("111").Range("G42").Value = Cel.Offset(0, 34).Value ' =prix transitaire
Sheets("111").Range("C44").Value = Cel.Offset(0, 35).Value ' =Date_Cloture
Sheets("111").Range("C45").Value = Cel.Offset(0, 36).Value ' =Date_ETD
Sheets("111").Range("C43").Value = Cel.Offset(0, 37).Value ' =POL
Sheets("111").Range("C46").Value = Cel.Offset(0, 38).Value ' =pays chargement transitaire
Sheets("111").Range("C46").Value = Cel.Offset(0, 39).Value ' =Date_ETA
Sheets("111").Range("C47").Value = Cel.Offset(0, 40).Value ' =POD
Sheets("111").Range("C46").Value = Cel.Offset(0, 41).Value ' =pays liv transitaire
Sheets("111").Range("C55").Value = Cel.Offset(0, 42).Value ' =Date_Liv_Fin
Sheets("111").Range("C56").Value = Cel.Offset(0, 43).Value ' =Cod_Post_Fin
Sheets("111").Range("G55").Value = Cel.Offset(0, 44).Value ' =Vill_Liv_Fin
Sheets("111").Range("G56").Value = Cel.Offset(0, 45).Value ' =Pays_Liv_Fin
End If
Next
Unload Me
On Error Resume Next
MkDir "\\FERRY04\Expeditions\6. TRANSPORTS"
ThisWorkbook.Worksheets("111").ExportAsFixedFormat Type:=xlTypePDF, Filename:="\\FERRY04\Expeditions\6. TRANSPORTS\" & "RECAP SUR VENTE" & "_" & Txt_Num_DT & "_" & nom$ & "_" & inco$ & "_" & dest$ & ".pdf"
Next i
Sheets(1).Select
Application.ScreenUpdating = True
MsgBox ("LE RECAPITULATIF TRANSPORT SUR VENTE PDF est disponnible")
Sheets("111").Range("E1,E2,E3,E4,E5,I4,M3,M4,H27,H28,B30,B31,B32,B33,B34,G30,G31,G32,G33,G34,D36,H39,H40,C41,C42,C43,C45,C49,C54,C55,H54,H55").ClearContents
Sheets("111").Range("A11:K26").ClearContents
End SubRe Pinpin54000 le forum
pourquoi tu n'as pas remis le fichier avec la macro modifiée??
a+
papou
Re Pinpin54000 le forum
ta macro modifiée je n'ai pas vérifié les correspondances mais !!! ????
Une certitude pour l’effacement de la feuille tu avais tout faut
a+
Papou
paritec,
je retravaille dessus ce soir, j'essaie de résoudre par moi même différents ratés et te reviens demain je pense pour un coup de main
encore merci pour ta patience
Pipin54000
paritec,
je vois déjà un soucis dans la macro Cmd_Recap_Vente_Click() est c'est pareil dans la macro Cmd_Consult_Click()
je m'explique, parfois comme dans la DT 1256 j'ai plusieurs pièce donc plusieurs ligne associé au même N°DT (1256 dans cette exemple) ; du coup comment faire pour qu'elle me reprenne à coup sûr l'ensemble des lignes associé à un N°DT ?
tu aurais une solution simple et efficace pour réduire le poids de mon fichier, avec quasi 800kio ça commence à faire ramer mon pc perso ... heureusement pas celui du boulot
merci pour ta réponse
Pipin54000
Bonjour Pinpin54000 le forum
Bon alors il semble que tu n'as envie de faire que ce que tu as envie, alors je vais te laisser faire c'est pas un souci pour moi.
Concernant tes problèmes avec tes macros
1) tu essayes d'effacer des cellules fusionnées, en donnant simplement une partie de l'adresse donc cela plante.
exemple tu fusionnes B25 et B26 l'adresse de la cellule devient B25 mais pour l'effacer il faut faire Range("B25:B26").clearcontents
2) tu me demandes de mettre un calendrier je te le fais et toi tu le supprimes donc tu me demandes de travailler pour rien!!!
pas grave.
3) tu parles de plusieurs lignes du même numéro, cela est déjà possible dans la macro si tu reprends le premier fichier que je t'ai envoyé tu pouvais le faire et cela fonctionnait parfaitement avec la version V4 et V3 de mémoire.
Donc en gros tu demandes de l'aide, mais pour ne pas en tenir compte, et supprimer ce que l'on te fait.
C'est donc bien ce que j'avais dit au tout début, tu as donc raison, toujours raison.
Tu parles de poids de Fichier !!!!! je n'ai pas regardé mais ce qui bouffe souvent c'est les mises en page, les formules dans des colonnes etc etc, mais 800 ko c'est pas non plus énorme
Bonne journée
Papou
paritec,
oui c'est évident, je fais ce que je veux quand je veux ; à ma manière tu as tord j'ai raison .... c'est bien pour cela que je me suis inscrit ici : vous faire perdre votre temps !!
concernant mes problèmes :
1) c'est pas un problème pour moi, les cellules fusionnées ne sont pas à supprimer mais ça tu ne pouvais le savoir j'en ai jamais fait allusion.
2) effectivement, je viens de me rendre compte que ton calendrier est supprimé ..... c'est une erreur nullement intentionnelle je le trouve intéressant à travailler !
3) si ça fonctionnait je vais les reprendre et bosser le sujet alors !
tu te trompe je n'ai nullement la prétention d'avoir la science infuse !!!! mais apparemment tu t'es fais ton opinion et cela n'en
changera pas ! je demande juste de l'aide : me donner des conseils et surtout M'EXPLIQUER les choses au lieu de râler psq je comprends rien, tu n'aurais peut être pas à travailler pour rien dans ce cas !
a te lire
Pipin54000
Re pinpin54000 le forum
Tu parles d'expliquer, je te parle de faire un .clearcontents sur une cellule fusionnée.
Je te dis et je suis sur que dans les macros, que tu as renvoyé dans ton dernier fichier, tu essayes d'effacer des cellules fusionnées et que tu ne pourras pas si tu donnes pas la plage de cellules de cette cellule fusionnée, et c'est certain.
Maintenant à toi de regarder dans le .clearcontents que tu as fait quelles sont les cellules qui posent problème.
Pour le module calendrier le module de classe et le module Paritec supprimés, rien ne se fait tout seul !!!!
a+
Papou
Re Pinpin54000 le forum
Voilà avec opérationnel Private Sub Cmd_Recap_Vente_Click() et Private Sub Cmd_Consult_Click()
Avec des boutons sur le trois feuilles pour lancer l'userform.
(Ton raccourci dans la barre des tâches je te le laisse car il plante régulièrement et c'est normal!!!!)
Mais tu auras raison alors pas de souci.
Les deux macros tournent parfaitement dans la configuration de la V7
A Toi de tester ou de casser c'est ton fichier.
Il te reste à changer le textbox num je ne sais pas, par un combobox rempli par une liste sans doublon comme j'avais fait pour consult.
a+
Papou
Paritec,
oui c'est affaire réglée, tu avis raison je l’admets ! après comme je te l'ai dis, il faut m'expliquer plusieurs fois avant de comprendre !
là et c'est indéniable, les module et l'userform que tu m'as mis on disparu : pourquoi, comment ça je ne sais pas ... en revanche si je l'ai fais ce n'était pas intentionnel et je te pris de m'en excuser.
je trouvais intéressant ton calendrier, je vois pas bien pourquoi je l'aurais supprimé volontairement mais bon
au lieu de me dire ton raccourci il plante tout le temps et c'est normal je te le laisse, tu ne peux pas me dire pourquoi ça plante ?????
le problème majeur de ton combobox avec liste déroulante c'est que au début je n'ai pas bcp de DT mais au fil de l'année je vais en avoir des centaines .... une liste déroulante n'est pas adapté du coup, tu aurais un conseil de quoi utiliser ?
pourrais tu, si s'agit d'un jour de bonté pour
1) me rajouter ton userform calendrier calendrier dans mon fichier et me le placer sur la colonne lancement, je chercherai pour l'ajouter à toutes les colonnes qui ont besoin ?
2) pourrais tu s'il te plait me rajouter la désignation (DT, OF, POSTE, DEVIS, ...) dans la recherche
3) si je supprime la fonction recherche N°DT est ce que ça va affecter le fonctionnement de la recherche en entier ?
4) aurais tu une idée de comment faire une mise en forme conditionnelle en fonction de ce que je choisis dans ma liste déroulante en A ( VENTE = (B:BE) = rouge , DT, = (B:BE) = orange, DEVIS = (B:BE) = jaune) et cela sur toute mes lignes ?
dans l'attente de te lire
Pipin54000
Bonjour pinpin54000 le forum
le problème majeur de ton combobox avec liste déroulante c'est que au début je n'ai pas bcp de DT mais au fil de l'année je vais en avoir des centaines .... une liste déroulante n'est pas adapté du coup, tu aurais un conseil de quoi utiliser ?
Alors avoir une liste de 10 ou 500 noms ne change rien un coup d’œil et le numéro tu le trouves, avec ta méthode il faut systématiquement taper tes quatre numéros au risque de se tromper!!!!
De plus le combobox a au moins un avantage c'est d'avoir une liste remplie avec une liste sans doublon.
Mais si tu veux des textboxs, c'est contre productif, mais c'est toi qui voit .
2) pourrais tu s'il te plait me rajouter la désignation (DT, OF, POSTE, DEVIS, ...) dans la recherche
bah là j'ai mis un textbox de recherche qui te permet de rentre n'importe quoi même une ville ou un bout de n'importe quel élément
3) si je supprime la fonction recherche N°DT est ce que ça va affecter le fonctionnement de la recherche en entier ?
oui mais là encore quelle soit là sans être utilisée ne dérange pas le fonctionnement.
4) aurais tu une idée de comment faire une mise en forme conditionnelle en fonction de ce que je choisis dans ma liste déroulante en A ( VENTE = (B:BE) = rouge , DT, = (B:BE) = orange, DEVIS = (B:BE) = jaune) et cela sur toute mes lignes ?
je ne suis pas sur de comprendre ta demande, je suppose que tu parles de la feuille "1"?,
a+
papou
Re bonjour Pinpin54000 le forum
merci de lire le post précédent
a+
papou
paritec,
4) aurais tu une idée de comment faire une mise en forme conditionnelle en fonction de ce que je choisis dans ma liste déroulante en A ( VENTE = (B:BE) = rouge , DT, = (B:BE) = orange, DEVIS = (B:BE) = jaune) et cela sur toute mes lignes ?
je ne suis pas sur de comprendre ta demande, je suppose que tu parles de la feuille "1"?,
oui c'est ça dans mon tableau ("1") en A j'ai une liste déroulante, et en fonction de ce que je choisi j'aimerai que la ligne entière soit (A:BE) se mette dans un format VENTE = rouge , DT = orange, DEVIS = jaune.
tu aurais l'amabilité de m'expliquer comment je peux remettre ton calendrier dans les colonne que je souhaite ?
a te lire
Pipin54000
paritec
paritec,
4) aurais tu une idée de comment faire une mise en forme conditionnelle en fonction de ce que je choisis dans ma liste déroulante en A ( VENTE = (B:BE) = rouge , DT, = (B:BE) = orange, DEVIS = (B:BE) = jaune) et cela sur toute mes lignes ?
je ne suis pas sur de comprendre ta demande, je suppose que tu parles de la feuille "1"?,
oui c'est ça dans mon tableau ("1") en A j'ai une liste déroulante, et en fonction de ce que je choisi j'aimerai que la ligne entière soit (A:BE) se mette dans un format VENTE = rouge , DT = orange, DEVIS = jaune.
tu aurais l'amabilité de m'expliquer comment je peux remettre ton calendrier dans les colonne que je souhaite ?
a te lire
Pipin54000
PROGRAMME TRANSPORT.xlsm
(789.68 Kio) Pas encore téléchargé
Re: Problème lors de la copie + enregistrement pdf
par paritec » il y a 12 minutes
Re bonjour Pinpin54000 le forum
merci de lire le post précédent
a+
papou
désolé nos message se sont croisés !
c'est impecc merci à toi
Pipin54000
Re pinpin54000 le forum
bon la finalité c'est quoi?? Pour l'histoire du combobox avec les numéros, si tu préfères taper un numéro dans la combobox, tu peux il est 100% accessible
pour le reste, j'attends ton retour
a+
papou
Re pinpin54000 le forum
ATTENTION j'espère que les lignes présentent dans la feuille "1" ne sont pas des vraies lignes car lors de mes test il est possible pour ne pas dire certain que j'ai changé des valeur de la colonne A
a+
papou