|
|
|
|
Posté par
platinium, le mercredi 10 octobre 2007 à 00:13:23Configuration: Windows Vista Internet Explorer 7.0
J'ai pas trop compris ton histoire mais je crois avoir fais un truc un peu semblable donc je t'envoie toujours le code que j'ai fais...
Je dis pas que c'est LA méthode mais c'est une méthode... Explications : Worksheets(1).Range([A3].End(xlDown), [K3]).Borders(xlEdgeBottom).Weight = xlThick -> Feuille numéro1, Range à partir de A3 jusqu'à la prochaine cellule vide en verticle et jusque K3 en horizontal, Bordure du bas en xlThick Les autres lignes suivent le même principe. Après je fais une boucle pour terminer le boulot... Pour que cette façon de procéder fonctionne, il faut que dans ton tableau il y ait au moins une colonne où il n'y a pas de cellule vide (colonne A chez moi). CODE ------- ''''''''''''''''''''''''''' ' Formattage de la grille ' ''''''''''''''''''''''''''' Worksheets(1).Range([A3].End(xlDown), [K3]).Borders(xlEdgeBottom).Weight = xlThick Worksheets(1).Range([A3].End(xlDown), [K3]).Borders(xlEdgeRight).Weight = xlThick Worksheets(1).Range([A3].End(xlDown), [K3]).Borders(xlEdgeLeft).Weight = xlThick Worksheets(1).Range([A3].End(xlDown), [K3]).Borders(xlInsideHorizontal).Weight = xlThin Worksheets(1).Range([A3].End(xlDown), [K3]).Borders(xlInsideVertical).Weight = xlThin i = 3 ' i est un Integer While Cells(i, 2) <> "" Cells(i, 1).Borders(xlEdgeLeft).Weight = xlThick Cells(i, 1).Borders(xlEdgeRight).Weight = xlThin Cells(i, 1).Borders(xlEdgeBottom).Weight = xlThin i = i + 1 Wend Cells(i, 1).Borders(xlEdgeTop).Weight = xlThick |
Bonjour BloodyAngel,
Merci pour ta réponse, que je consulte tard car je n'ai pas eu le temps de la consulter plus tôt. J'ai essayer ta méthode, mais ça n'a pas pas fonctionner, et je n'ai pas réussi à l'adapter. J'ai cependant trouver une autre solution, bien plus lourde que celle que tu m'as proposer mais qui fonctionne. Voici le principe que j'ai utilisé dans un module : Sub bordure() Sheets("devis").Range("a17:i18" & i & "").Select If Sheets("devis").[a19].Value = "" Then GoTo fin Else Sheets("devis").Range("a17:i19" & i & "").Select If Sheets("devis").[a20].Value = "" Then GoTo fin Else Sheets("devis").Range("a17:i20" & i & "").Select If Sheets("devis").[a21].Value = "" Then GoTo fin Else Sheets("devis").Range("a17:i21" & i & "").Select ' ........ End If End If End If fin: With Selection.Borders(xlEdgeLeft) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With Selection.Borders(xlEdgeTop) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With Selection.Borders(xlEdgeBottom) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With Selection.Borders(xlEdgeRight) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With Selection.Borders(xlInsideVertical) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With Selection.Borders(xlInsideHorizontal) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With End Sub Voilà, je sais que la partie & i & "") du code Sheets("devis").Range("a17:i18" & i & "").Select ne doit pas servir à grand chose car i n'est pas défini, mais ça fonctionne pour le moment. je ferai le tri plus tard. Merci BloodyAngel, et excuse-moi pour la réponse très tardive ! |
Bonjour,
Tu peux sélectionner ta zone en cours avec .currentregion : Range("A17").CurrentRegion.Select La selection s'étend tant que les cellules autour ne sont pas vides. eric |
| 29/10 12h20 | Figer une ligne | Excel |
| 12/03 13h58 | Le remplacement de variables en shell Bash | Bash |
| 12/01 09h34 | [Excel] Trier sur les lignes (horizontalement), non les colonnes | Excel |
| 15/09 11h07 | [Excel] Restreindre l'accés aux cellules | Excel |
| 15/09 10h59 | [Excel] Colorer des cellules sur conditions | Excel |
| 16/02 19h37 | VBA Excel : Selectionner des cellules | 14 |
| 22/05 09h25 | [VBA-EXCEL] Copier plage de cellules aléatoir | 9 |
| 02/05 09h56 | Vba excel - sélectionner un mail | 0 |
| 01/05 10h06 | Vba excel - sélectionner un mail | 0 |
![]() | iMovie HD - iMovie est l'utilitaire de montage vidéo par excellence pour les non professionnels. Le montage devient intuitif que ce soit... | Catégorie: Montage vidéo Licence: Freeware/gratuit |
![]() | Excel Viewer - Avec Microsoft Office Excel Viewer 2003, vous pouvez ouvrir, afficher et imprimer des classeurs Excel (fichiers XLS ), même... | Catégorie: Tableur Licence: Freeware/gratuit |
![]() | GANTT Project - GanttProject est un outil de gestion de projet libre, permettant de réaliser des diagrammes de GANTT afin de planifier un... | Catégorie: Gestion de projet Licence: Open Source |
![]() | Coloriage - Coloriage est un logiciel de coloriage pour jeunes enfants, à la manière de Tux Paint . Il répertorie quelque 220 dessins à... | Catégorie: Dessin Licence: Freeware/gratuit |
![]() | Sony Micro Vault Excellence | Catégorie: Carte Mémoire / Clé USB | 41.50 € MicroChoix |
![]() | Sony Micro Vault Excellence | Catégorie: Carte Mémoire / Clé USB | 16.74 € Misco FR |
![]() | Sony Micro Vault Excellence | Catégorie: Carte Mémoire / Clé USB | 29.33 € PriceMinister |
![]() | Sony Micro Vault Excellence | Catégorie: Carte Mémoire / Clé USB | 41.00 € PriceMinister |