Mise en page via VBA

Résolu/Fermé
saxo91 Messages postés 33 Date d'inscription lundi 19 octobre 2015 Statut Membre Dernière intervention 17 octobre 2023 - 16 févr. 2017 à 08:08
kikkoCCm Messages postés 70 Date d'inscription vendredi 2 juillet 2010 Statut Membre Dernière intervention 17 août 2019 - 27 févr. 2017 à 13:55
Bonjour à tous !
Et même si je suis en retard, bonne année.

Une Question VBA (je suis déjà pas au top mais là c'est pire).

Mise en page VBA, j'essaie de simplifier la vie à certaines personnes, pour la récupération des données, les calculs ... c'est ok.
Mais pour le mise en page du Bon de livraison je ne sais pas comment faire.
J'ai trouvé des code sur le net mais comme je n'y comprends rien je n'arrive pas à les adapter.

Il faut mettre des bordures en fonction d'une cellule ... c'est compliqué à expliquer donc j'ai mis un fichier avant/après.

Et si vous avez quelques chose pour l'impression je suis preneuse.

Merci d'avance à tous !
Louisa


http://www.cjoint.com/c/GBqhc2rQo4R



A voir également:

5 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
16 févr. 2017 à 08:19
Bonjour,

La couleur bleue est mise manuellement ou... ?
0
saxo91 Messages postés 33 Date d'inscription lundi 19 octobre 2015 Statut Membre Dernière intervention 17 octobre 2023 1
16 févr. 2017 à 08:36
Bonjour Michel,

Non, en fait je récupère les données depuis un autre fichier puis je copie/colle donc la couleur bleue vient du format initial du fichier qui nous est transmis.

Louisa
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié par michel_m le 16/02/2017 à 09:58
re,

proposition

Option Explicit
'------------------------------------------------------
Sub encadrer()
Dim Derlig As Integer, Dercol As Byte
Dim Nbre As Integer, Cptr As Integer, Lig As Integer, Col As Byte

Application.ScreenUpdating = False

'--------------------------bordures horizontales
'bas du cadre
Derlig = Columns("A").Find(what:="*", searchdirection:=xlPrevious).Row + 1
Range(Cells(Derlig, "A"), Cells(Derlig, "O")).Borders(xlEdgeBottom).Weight = xlMedium
'lignes intermédiaires
Nbre = Application.CountIf(Columns("A"), "*")
Lig = 5
For Cptr = 1 To Nbre
Lig = Columns("A").Find(what:="*", After:=Cells(Lig, "A")).Row
If Cells(Lig, "A").Interior.ColorIndex = 8 Then _
Range(Cells(Lig, "A"), Cells(Lig, "O")).Borders(xlEdgeTop).Weight = xlMedium
Next

'-------------------------bordures verticales
'droite du cadre
Dercol = Rows(5).Find(what:="*", searchdirection:=xlPrevious).Column
Range("O5:O" & Derlig).Borders(xlEdgeRight).Weight = xlMedium
'colonnes intermédiaires
Nbre = Application.CountA(Rows(5)) - 1
Col = 1
For Cptr = 1 To Nbre
Col = Rows(5).Find(what:="*", After:=Cells(5, Col)).Column
Range(Cells(5, Col), Cells(Derlig, Col)).Borders(xlEdgeLeft).Weight = xlMedium
Next
End Sub


 Michel
0
saxo91 Messages postés 33 Date d'inscription lundi 19 octobre 2015 Statut Membre Dernière intervention 17 octobre 2023 1
16 févr. 2017 à 10:45
Re bonjour Michel

Merci pour ton temps.

J'ai pas tout compris, en fait tu te base sur les cellules bleues pour les lignes mais pour les colonnes je n'arrive pas a décrypter ...

J'ai une erreur 91

Je te mets le vrai fichier ...

http://www.cjoint.com/doc/17_02/GBqjPP1PWSR_BON-LIVRAISON-UPS.xlsm

@+
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
16 févr. 2017 à 11:30
mettre ton classeur sur https://mon-partage.fr/ car cjoint n'accapte pas les classeurs avec macro et il faut faire des "renommer" pour ouvrir

Nota: j'avais testé comme d'hab et ca fonctionnait....
0
saxo91 Messages postés 33 Date d'inscription lundi 19 octobre 2015 Statut Membre Dernière intervention 17 octobre 2023 1 > michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023
16 févr. 2017 à 12:49
Re

Je pense que c'est parce que je bidouille des bouts de codes que ça ne fonctionne pas chez moi, rassure toi ... mais j'y vais à l'arrache et j'apprends en même temps !

Le lien dans mon partage :

https://mon-partage.fr/f/qYGaiv4T/

Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kikkoCCm Messages postés 70 Date d'inscription vendredi 2 juillet 2010 Statut Membre Dernière intervention 17 août 2019 4
27 févr. 2017 à 13:55
Wé :-/ !
0