hhhannah
Messages postés2Date d'inscriptionmardi 15 juillet 2014StatutMembreDernière intervention15 juillet 2014
-
Modifié par jordane45 le 15/07/2014 à 11:19
jordane45
Messages postés37508Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention29 mai 2023
-
15 juil. 2014 à 15:04
Bonjour,
Je dois faire un tableau de bord des factures et règlements de mon service.
En gros, toute la partie gauche ed mon tableau (depuis le numéro de facture jusqu'aux colonnes concernant les créances) est un tableau croisé dynamique alimenté par une source externe.
Du coup, quand je rafraichis mon TCD, de nouvelles lignes vont s'ajouter.
Du coup, j'aimerais savoir si il est possible de faire en sorte que la partie droite du tableau se crée automatiquement de façon à ne pas avoir un tableau tout moche à droite qui descend jusqu'en bas...
jordane45
Messages postés37508Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention29 mai 2023341 15 juil. 2014 à 11:27
Bonjour,
Oui c'est possible.
Tu trouves la dernière ligne remplis de ton tableau de gauche.
Tu définis la "nouvelle" plage de ton tableau de droite.
Pour cette plage... tu défini les bords de tes cellules.
Et tout cela se déclenche lors d'un changement dans la feuille...
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Derniere_Ligne As Integer
Derniere_Ligne = Cells.Find("*", Range("A1"), , , xlByRows, xlPrevious).Row
Dim MaPlage As Range
Set MaPlage = Range("V1:X" & Derniere_Ligne)
With MaPlage.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With MaPlage.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With MaPlage.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With MaPlage.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With MaPlage.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With MaPlage.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
End Sub
Bien sûr... là je n'ai traité que les bords de cellule...
Il te faudra coder l'ajout des formules si tu en as...etc....
hhhannah
Messages postés2Date d'inscriptionmardi 15 juillet 2014StatutMembreDernière intervention15 juillet 2014 15 juil. 2014 à 12:07
Merci bcp,
je suis vraiment nulle je ne sais aps comment coder l'ajout des formules :s
jordane45
Messages postés37508Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention29 mai 2023341 15 juil. 2014 à 15:04
Ta "première" question est résolue.
Il faut donc clôre ce sujet => C'est la règle ici....
Ensuite...(toujours par ce que c'est la règle sur ce forum)... on ne pose qu' UNE question par discussion....
Il te faudra donc en ouvrir une autre.
Et puis ne déserpère pas.... on fini par apprendre....
Par exemple... comment ferais tu "manuellement" pour reproduire tes formules (si tu en as) dans le reste de ton tableau ?
Et bien.... utilises l'enregistreur de macro.... effectue l'opération manuellement... et regarde le code que ça te génère.
Ensuite si tu bloques toujours... reviens avec ton code et des explications détaillées de ce que tu souhaites faire et là...on pourra peut être t'aider.