Pb Excel - macro report de lignes [Résolu/Fermé]

Signaler
Messages postés
8
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
5 juillet 2012
-
Messages postés
8
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
5 juillet 2012
-
Bonjour,

je reviens vers pour un pb de macro.
ci-joint le fichier : https://www.cjoint.com/?ljlEbvQzEH

il s'agit d'un fichier excel avec deux feuilles. la 1ère permet de saisir un bon de livraison, la 2ème récupère les infos importantes. il y a actuellement un pb dans le report des lignes de désignations. comme le montre le fichier joint, les désignations du 3ème bon de livraison viennent remplir des vides des autres bons de livraison.

ma seconde requête concerne le n° de bon que j'attribue automatiquement en incrémentant. est-il possible d'avoir un n° de type 09xxx qui s'incrémenterait de +1.

merci de votre précieuse aide.

4 réponses

Messages postés
12185
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
21 septembre 2020
2 484
Salut,
Normal, celui qui t'as aidé la première fois ne devait pas être bien réveille. Cette macro fonctionne mieux...

Private Sub CommandButton1_Click()
Dim lig As Integer
Cells(23, "d").Value = Cells(23, "d").Value + 1
With Sheets("Récap")
lig = .Range("A65536").End(xlUp).Offset(1, 0).Row
End With
ActiveSheet.Range("D23").Copy Sheets("Récap").Range("A" & lig)
ActiveSheet.Range("c21").Copy Sheets("Récap").Range("B" & lig)
ActiveSheet.Range("e12").Copy Sheets("Récap").Range("C" & lig)
ActiveSheet.Range("C27").Copy Sheets("Récap").Range("D" & lig)
ActiveSheet.Range("C28").Copy Sheets("Récap").Range("E" & lig)
ActiveSheet.Range("C29").Copy Sheets("Récap").Range("F" & lig)
ActiveSheet.Range("C30").Copy Sheets("Récap").Range("G" & lig)
ActiveSheet.Range("C31").Copy Sheets("Récap").Range("H" & lig)
ActiveSheet.Range("C32").Copy Sheets("Récap").Range("I" & lig)
ActiveSheet.Range("C33").Copy Sheets("Récap").Range("J" & lig)
ActiveSheet.Range("C34").Copy Sheets("Récap").Range("K" & lig)
ActiveSheet.Range("C35").Copy Sheets("Récap").Range("L" & lig)
ActiveSheet.Range("C36").Copy Sheets("Récap").Range("M" & lig)
ActiveSheet.Range("C37").Copy Sheets("Récap").Range("N" & lig)
ActiveSheet.Range("C38").Copy Sheets("Récap").Range("O" & lig)
With Sheets("Récap").Columns("A:O")
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
.Borders(xlEdgeLeft).LineStyle = xlNone
.Borders(xlEdgeTop).LineStyle = xlNone
.Borders(xlEdgeBottom).LineStyle = xlNone
.Borders(xlEdgeRight).LineStyle = xlNone
.Borders(xlInsideVertical).LineStyle = xlNone
.Borders(xlInsideHorizontal).LineStyle = xlNone
.Font.Bold = False
ActiveSheet.PrintOut , , 1, True, "Mon_Imprimante", False, False
End With
End Sub

Quant à ton n° de BL, tu veux qu'il s'incrémente quand? A l'ouverture du fichier? après impression?
Messages postés
8
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
5 juillet 2012

je viens de vous envoyer un message privé mais vous venez de répondre.
vraiment super, c'est parfait.
pour l'incrémentation ce serait mieux à l'ouverture du fichier je pense.
merci de votre aide, vraiment.
où pourrais-je trouver les fonctions de base vb avec des ex. simples (comme ça je pourrais progresser).
Messages postés
12185
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
21 septembre 2020
2 484
Je ne sais pas ou trouver les fonctions de base. J'ai appris sur le tas... Vois avec Google s'il en connait.

Incrémentation à l'ouverture du fichier :
ALT + F11
En haut à gauche de la fenêtre Visual Basic, un petite fenêtre contient :
Feuil1(BL)
Feuil2(Récap)
This workbook.
Cliquer sur This Workbook et copier coller cette procédure :

Private Sub Workbook_Open()
Sheets("BL").Range("D23") = Sheets("Récap").Range("A65536").End(xlUp).Value + 1
End Sub
fermer enregistrer fermer excel et tester l'ouverture... en ouvrant le fichier!!
Messages postés
8
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
5 juillet 2012

bonjour,
je viens de rajouter des fonctionnalités à ma macro qui rendent inopérantes ma première demande et les lignes de développement de pijaku. (comme le montre le fichier joint, les désignations du 2ème bon de livraison reviennent à nouveau remplir les lignes vides du 1er).
je ne vois pas comment faire....

https://www.cjoint.com/?lqptp0m4wl


merci de votre aide.