dans word les décimales font n'importe quoi !
il faut modifier tous les champs dans word, c'est la galère.
Avec excel et word 2003, on avait pas ce pb
dur dur
Pardon pardon, j'ai un tableau excel avec ligne d'en tete : nom, quantité, libellé, prix unitaire, ht, tva, ttc j'ouvre un tableau word et avec publipostage je fusionne avec le tableau excel, quand je fais l'apercu des resultats dans word, il met plein de decimale dans les chiffres, ma question est ce qu'il y a un moyen simple et rapide pour afficher que les 2 chiffres apres la virgule comme dans excel ? je sais qu'on peut modifie les codes champs {MERGEFIELD montant# ##0.00}, mais quand il y a une dizaine de champ, pas très pratique. C'est avec Excel et Word 2010. J'espère que je suis plus explicite. Luc
MichD a exposé le 17/03/2013 :
Bonjour,
À force de simplifier la présentation de ta question,
on finit par perdre l'essentiel de ton propos.
Alors, comment formuler une réponse convenable?
Pardon pardon, j'ai un tableau excel avec ligne d'en tete :
nom, quantité, libellé, prix unitaire, ht, tva, ttc
j'ouvre un tableau word et avec publipostage je fusionne avec le
tableau excel,
quand je fais l'apercu des resultats dans word, il met plein de
decimale dans les chiffres,
ma question est ce qu'il y a un moyen simple et rapide pour afficher
que les 2 chiffres apres la virgule comme dans excel ?
je sais qu'on peut modifie les codes champs {MERGEFIELD montant#
##0.00}, mais quand il y a une dizaine de champ, pas très pratique.
C'est avec Excel et Word 2010.
J'espère que je suis plus explicite.
Luc
Pardon pardon, j'ai un tableau excel avec ligne d'en tete : nom, quantité, libellé, prix unitaire, ht, tva, ttc j'ouvre un tableau word et avec publipostage je fusionne avec le tableau excel, quand je fais l'apercu des resultats dans word, il met plein de decimale dans les chiffres, ma question est ce qu'il y a un moyen simple et rapide pour afficher que les 2 chiffres apres la virgule comme dans excel ? je sais qu'on peut modifie les codes champs {MERGEFIELD montant# ##0.00}, mais quand il y a une dizaine de champ, pas très pratique. C'est avec Excel et Word 2010. J'espère que je suis plus explicite. Luc
DanielCo
Bonjour,
Utilise, avec prudence l'option "Décimale fixe" si tu as le même nombre de décimales pour tous les nombres. Mais attention, ce n'est pas une option d'affichage. Les nombres sont réellement tronqués. Si tu utilises cette option avec deux décimales et que tu entres "2" dans une cellules, Excel va comprendre "0,02". A mon avis, c'est à éviter à tout prix, le remède est pire que le mal.
Daniel
MichD a exposé le 17/03/2013 :
Bonjour,
À force de simplifier la présentation de ta question, on finit par perdre l'essentiel de ton propos. Alors, comment formuler une réponse convenable?
Pardon pardon, j'ai un tableau excel avec ligne d'en tete : nom, quantité, libellé, prix unitaire, ht, tva, ttc j'ouvre un tableau word et avec publipostage je fusionne avec le tableau excel, quand je fais l'apercu des resultats dans word, il met plein de decimale dans les chiffres, ma question est ce qu'il y a un moyen simple et rapide pour afficher que les 2 chiffres apres la virgule comme dans excel ? je sais qu'on peut modifie les codes champs {MERGEFIELD montant# ##0.00}, mais quand il y a une dizaine de champ, pas très pratique. C'est avec Excel et Word 2010. J'espère que je suis plus explicite. Luc
Bonjour,
Utilise, avec prudence l'option "Décimale fixe" si tu as le même nombre
de décimales pour tous les nombres. Mais attention, ce n'est pas une
option d'affichage. Les nombres sont réellement tronqués. Si tu
utilises cette option avec deux décimales et que tu entres "2" dans une
cellules, Excel va comprendre "0,02". A mon avis, c'est à éviter à tout
prix, le remède est pire que le mal.
Daniel
MichD a exposé le 17/03/2013 :
Bonjour,
À force de simplifier la présentation de ta question,
on finit par perdre l'essentiel de ton propos.
Alors, comment formuler une réponse convenable?
Pardon pardon, j'ai un tableau excel avec ligne d'en tete :
nom, quantité, libellé, prix unitaire, ht, tva, ttc
j'ouvre un tableau word et avec publipostage je fusionne avec le tableau
excel,
quand je fais l'apercu des resultats dans word, il met plein de decimale dans
les chiffres,
ma question est ce qu'il y a un moyen simple et rapide pour afficher que les
2 chiffres apres la virgule comme dans excel ?
je sais qu'on peut modifie les codes champs {MERGEFIELD montant# ##0.00},
mais quand il y a une dizaine de champ, pas très pratique.
C'est avec Excel et Word 2010.
J'espère que je suis plus explicite.
Luc
Utilise, avec prudence l'option "Décimale fixe" si tu as le même nombre de décimales pour tous les nombres. Mais attention, ce n'est pas une option d'affichage. Les nombres sont réellement tronqués. Si tu utilises cette option avec deux décimales et que tu entres "2" dans une cellules, Excel va comprendre "0,02". A mon avis, c'est à éviter à tout prix, le remède est pire que le mal.
Daniel
MichD a exposé le 17/03/2013 :
Bonjour,
À force de simplifier la présentation de ta question, on finit par perdre l'essentiel de ton propos. Alors, comment formuler une réponse convenable?
Pardon pardon, j'ai un tableau excel avec ligne d'en tete : nom, quantité, libellé, prix unitaire, ht, tva, ttc j'ouvre un tableau word et avec publipostage je fusionne avec le tableau excel, quand je fais l'apercu des resultats dans word, il met plein de decimale dans les chiffres, ma question est ce qu'il y a un moyen simple et rapide pour afficher que les 2 chiffres apres la virgule comme dans excel ? je sais qu'on peut modifie les codes champs {MERGEFIELD montant# ##0.00}, mais quand il y a une dizaine de champ, pas très pratique. C'est avec Excel et Word 2010. J'espère que je suis plus explicite. Luc
Luc
DanielCo avait soumis l'idée :
Bonjour,
Utilise, avec prudence l'option "Décimale fixe" si tu as le même nombre de décimales pour tous les nombres. Mais attention, ce n'est pas une option d'affichage. Les nombres sont réellement tronqués. Si tu utilises cette option avec deux décimales et que tu entres "2" dans une cellules, Excel va comprendre "0,02". A mon avis, c'est à éviter à tout prix, le remède est pire que le mal.
Daniel
MichD a exposé le 17/03/2013 :
Bonjour,
À force de simplifier la présentation de ta question, on finit par perdre l'essentiel de ton propos. Alors, comment formuler une réponse convenable?
Pardon pardon, j'ai un tableau excel avec ligne d'en tete : nom, quantité, libellé, prix unitaire, ht, tva, ttc j'ouvre un tableau word et avec publipostage je fusionne avec le tableau excel, quand je fais l'apercu des resultats dans word, il met plein de decimale dans les chiffres, ma question est ce qu'il y a un moyen simple et rapide pour afficher que les 2 chiffres apres la virgule comme dans excel ? je sais qu'on peut modifie les codes champs {MERGEFIELD montant# ##0.00}, mais quand il y a une dizaine de champ, pas très pratique. C'est avec Excel et Word 2010. J'espère que je suis plus explicite. Luc
Bonjour, Dans Excel, il y 2 chiffres après la virgule soit avec le format numérique ou avec la formule arrondi(nombre;2) C'est dans word le pb quand je fusionne, il peut me mettre une dizaine de chiffre après la virgule. Luc
DanielCo avait soumis l'idée :
Bonjour,
Utilise, avec prudence l'option "Décimale fixe" si tu as le même nombre de
décimales pour tous les nombres. Mais attention, ce n'est pas une option
d'affichage. Les nombres sont réellement tronqués. Si tu utilises cette
option avec deux décimales et que tu entres "2" dans une cellules, Excel va
comprendre "0,02". A mon avis, c'est à éviter à tout prix, le remède est pire
que le mal.
Daniel
MichD a exposé le 17/03/2013 :
Bonjour,
À force de simplifier la présentation de ta question,
on finit par perdre l'essentiel de ton propos.
Alors, comment formuler une réponse convenable?
Pardon pardon, j'ai un tableau excel avec ligne d'en tete :
nom, quantité, libellé, prix unitaire, ht, tva, ttc
j'ouvre un tableau word et avec publipostage je fusionne avec le tableau
excel,
quand je fais l'apercu des resultats dans word, il met plein de decimale
dans les chiffres,
ma question est ce qu'il y a un moyen simple et rapide pour afficher que
les 2 chiffres apres la virgule comme dans excel ?
je sais qu'on peut modifie les codes champs {MERGEFIELD montant# ##0.00},
mais quand il y a une dizaine de champ, pas très pratique.
C'est avec Excel et Word 2010.
J'espère que je suis plus explicite.
Luc
Bonjour,
Dans Excel, il y 2 chiffres après la virgule soit avec le format
numérique ou avec la formule arrondi(nombre;2)
C'est dans word le pb quand je fusionne, il peut me mettre une dizaine
de chiffre après la virgule.
Luc
Utilise, avec prudence l'option "Décimale fixe" si tu as le même nombre de décimales pour tous les nombres. Mais attention, ce n'est pas une option d'affichage. Les nombres sont réellement tronqués. Si tu utilises cette option avec deux décimales et que tu entres "2" dans une cellules, Excel va comprendre "0,02". A mon avis, c'est à éviter à tout prix, le remède est pire que le mal.
Daniel
MichD a exposé le 17/03/2013 :
Bonjour,
À force de simplifier la présentation de ta question, on finit par perdre l'essentiel de ton propos. Alors, comment formuler une réponse convenable?
Pardon pardon, j'ai un tableau excel avec ligne d'en tete : nom, quantité, libellé, prix unitaire, ht, tva, ttc j'ouvre un tableau word et avec publipostage je fusionne avec le tableau excel, quand je fais l'apercu des resultats dans word, il met plein de decimale dans les chiffres, ma question est ce qu'il y a un moyen simple et rapide pour afficher que les 2 chiffres apres la virgule comme dans excel ? je sais qu'on peut modifie les codes champs {MERGEFIELD montant# ##0.00}, mais quand il y a une dizaine de champ, pas très pratique. C'est avec Excel et Word 2010. J'espère que je suis plus explicite. Luc
Bonjour, Dans Excel, il y 2 chiffres après la virgule soit avec le format numérique ou avec la formule arrondi(nombre;2) C'est dans word le pb quand je fusionne, il peut me mettre une dizaine de chiffre après la virgule. Luc
DanielCo
Bonjour, Dans Excel, il y 2 chiffres après la virgule soit avec le format numérique ou avec la formule arrondi(nombre;2) C'est dans word le pb quand je fusionne, il peut me mettre une dizaine de chiffre après la virgule. Luc
C'est dans Word qu'il faut alors régler le problème. Tu es sur un forum Excel ici. Daniel
Bonjour,
Dans Excel, il y 2 chiffres après la virgule soit avec le format numérique
ou avec la formule arrondi(nombre;2)
C'est dans word le pb quand je fusionne, il peut me mettre une dizaine de
chiffre après la virgule.
Luc
C'est dans Word qu'il faut alors régler le problème. Tu es sur un forum
Excel ici.
Daniel
Bonjour, Dans Excel, il y 2 chiffres après la virgule soit avec le format numérique ou avec la formule arrondi(nombre;2) C'est dans word le pb quand je fusionne, il peut me mettre une dizaine de chiffre après la virgule. Luc
C'est dans Word qu'il faut alors régler le problème. Tu es sur un forum Excel ici. Daniel
Luc
Après mûre réflexion, DanielCo a écrit :
Bonjour, Dans Excel, il y 2 chiffres après la virgule soit avec le format numérique ou avec la formule arrondi(nombre;2) C'est dans word le pb quand je fusionne, il peut me mettre une dizaine de chiffre après la virgule. Luc
C'est dans Word qu'il faut alors régler le problème. Tu es sur un forum Excel ici. Daniel
Ok, je vais poser la question dans le forum de Word Merci. Luc
Après mûre réflexion, DanielCo a écrit :
Bonjour,
Dans Excel, il y 2 chiffres après la virgule soit avec le format numérique
ou avec la formule arrondi(nombre;2)
C'est dans word le pb quand je fusionne, il peut me mettre une dizaine de
chiffre après la virgule.
Luc
C'est dans Word qu'il faut alors régler le problème. Tu es sur un forum Excel
ici.
Daniel
Ok, je vais poser la question dans le forum de Word
Merci.
Luc
Bonjour, Dans Excel, il y 2 chiffres après la virgule soit avec le format numérique ou avec la formule arrondi(nombre;2) C'est dans word le pb quand je fusionne, il peut me mettre une dizaine de chiffre après la virgule. Luc
C'est dans Word qu'il faut alors régler le problème. Tu es sur un forum Excel ici. Daniel
Ok, je vais poser la question dans le forum de Word Merci. Luc
MichD
Si tu utilises la macro que je t'ai donnée, essaie avec cette version de la macro pour copier la plage de cellules d'Excel dans un tableau Word.
Sub test() Dim Rg As Range Dim Wd As Object Dim Dc As Object, C As Column Dim T As Object, P As Row Dim A As Integer, B As Integer Dim Bb As Border
'Defined range to copy With Worksheets("Feuil1") Set Rg = .Range("A1:D5") End With
Set Wd = CreateObject("Word.Application") Wd.Visible = True Set Dc = Wd.Documents.Add
Set T = Dc.Tables.Add(Range:Ü.Range, _ NumRows:=Rg.Rows.Count, _ NumColumns:=Rg.Columns.Count)
For A = 1 To Rg.Rows.Count For B = 1 To Rg.Columns.Count If IsNumeric(Rg(A, B)) = True Then T.Cell(A, B).Range = Application.Round(Rg(A, B)) Else T.Cell(A, B).Range = Rg(A, B) End If Next Next
'To apply borders if necessary With T For Each C In .Range.Columns C.Borders(wdBorderHorizontal).Visible = True Next For Each P In .Range.Rows P.Borders(wdBorderVertical).Visible = True Next For A = -4 To -1 .Range.Borders(A) = True Next End With End Sub
Si tu utilises la macro que je t'ai donnée,
essaie avec cette version de la macro pour
copier la plage de cellules d'Excel dans un
tableau Word.
Sub test()
Dim Rg As Range
Dim Wd As Object
Dim Dc As Object, C As Column
Dim T As Object, P As Row
Dim A As Integer, B As Integer
Dim Bb As Border
'Defined range to copy
With Worksheets("Feuil1")
Set Rg = .Range("A1:D5")
End With
Set Wd = CreateObject("Word.Application")
Wd.Visible = True
Set Dc = Wd.Documents.Add
Set T = Dc.Tables.Add(Range:Ü.Range, _
NumRows:=Rg.Rows.Count, _
NumColumns:=Rg.Columns.Count)
For A = 1 To Rg.Rows.Count
For B = 1 To Rg.Columns.Count
If IsNumeric(Rg(A, B)) = True Then
T.Cell(A, B).Range = Application.Round(Rg(A, B))
Else
T.Cell(A, B).Range = Rg(A, B)
End If
Next
Next
'To apply borders if necessary
With T
For Each C In .Range.Columns
C.Borders(wdBorderHorizontal).Visible = True
Next
For Each P In .Range.Rows
P.Borders(wdBorderVertical).Visible = True
Next
For A = -4 To -1
.Range.Borders(A) = True
Next
End With
End Sub
Si tu utilises la macro que je t'ai donnée, essaie avec cette version de la macro pour copier la plage de cellules d'Excel dans un tableau Word.
Sub test() Dim Rg As Range Dim Wd As Object Dim Dc As Object, C As Column Dim T As Object, P As Row Dim A As Integer, B As Integer Dim Bb As Border
'Defined range to copy With Worksheets("Feuil1") Set Rg = .Range("A1:D5") End With
Set Wd = CreateObject("Word.Application") Wd.Visible = True Set Dc = Wd.Documents.Add
Set T = Dc.Tables.Add(Range:Ü.Range, _ NumRows:=Rg.Rows.Count, _ NumColumns:=Rg.Columns.Count)
For A = 1 To Rg.Rows.Count For B = 1 To Rg.Columns.Count If IsNumeric(Rg(A, B)) = True Then T.Cell(A, B).Range = Application.Round(Rg(A, B)) Else T.Cell(A, B).Range = Rg(A, B) End If Next Next
'To apply borders if necessary With T For Each C In .Range.Columns C.Borders(wdBorderHorizontal).Visible = True Next For Each P In .Range.Rows P.Borders(wdBorderVertical).Visible = True Next For A = -4 To -1 .Range.Borders(A) = True Next End With End Sub
Si tu utilises la macro que je t'ai donnée, essaie avec cette version de la macro pour copier la plage de cellules d'Excel dans un tableau Word.
Sub test() Dim Rg As Range Dim Wd As Object Dim Dc As Object, C As Column Dim T As Object, P As Row Dim A As Integer, B As Integer Dim Bb As Border
'Defined range to copy With Worksheets("Feuil1") Set Rg = .Range("A1:D5") End With
Set Wd = CreateObject("Word.Application") Wd.Visible = True Set Dc = Wd.Documents.Add
Set T = Dc.Tables.Add(Range:Ü.Range, _ NumRows:=Rg.Rows.Count, _ NumColumns:=Rg.Columns.Count)
For A = 1 To Rg.Rows.Count For B = 1 To Rg.Columns.Count If IsNumeric(Rg(A, B)) = True Then T.Cell(A, B).Range = Application.Round(Rg(A, B)) Else T.Cell(A, B).Range = Rg(A, B) End If Next Next
'To apply borders if necessary With T For Each C In .Range.Columns C.Borders(wdBorderHorizontal).Visible = True Next For Each P In .Range.Rows P.Borders(wdBorderVertical).Visible = True Next For A = -4 To -1 .Range.Borders(A) = True Next End With End Sub
J'ai fait insertion "module" (j'ai aussi "module de classe") puis collé les codes, changer le nom de la feuille et mis la bonne plage. Après je sais pas trop, j'ai enregistré puis je fais exécution F5, là erreur de compilation: type défini par l'utilisateur non défini, pas facile avec un débutant ! Luc
Le 17/03/2013, MichD a supposé :
Si tu utilises la macro que je t'ai donnée,
essaie avec cette version de la macro pour
copier la plage de cellules d'Excel dans un
tableau Word.
Sub test()
Dim Rg As Range
Dim Wd As Object
Dim Dc As Object, C As Column
Dim T As Object, P As Row
Dim A As Integer, B As Integer
Dim Bb As Border
'Defined range to copy
With Worksheets("Feuil1")
Set Rg = .Range("A1:D5")
End With
Set Wd = CreateObject("Word.Application")
Wd.Visible = True
Set Dc = Wd.Documents.Add
Set T = Dc.Tables.Add(Range:Ü.Range, _
NumRows:=Rg.Rows.Count, _
NumColumns:=Rg.Columns.Count)
For A = 1 To Rg.Rows.Count
For B = 1 To Rg.Columns.Count
If IsNumeric(Rg(A, B)) = True Then
T.Cell(A, B).Range = Application.Round(Rg(A, B))
Else
T.Cell(A, B).Range = Rg(A, B)
End If
Next
Next
'To apply borders if necessary
With T
For Each C In .Range.Columns
C.Borders(wdBorderHorizontal).Visible = True
Next
For Each P In .Range.Rows
P.Borders(wdBorderVertical).Visible = True
Next
For A = -4 To -1
.Range.Borders(A) = True
Next
End With
End Sub
J'ai fait insertion "module" (j'ai aussi "module de classe")
puis collé les codes, changer le nom de la feuille et mis la bonne
plage.
Après je sais pas trop, j'ai enregistré puis je fais exécution F5,
là erreur de compilation: type défini par l'utilisateur non défini,
pas facile avec un débutant !
Luc
Si tu utilises la macro que je t'ai donnée, essaie avec cette version de la macro pour copier la plage de cellules d'Excel dans un tableau Word.
Sub test() Dim Rg As Range Dim Wd As Object Dim Dc As Object, C As Column Dim T As Object, P As Row Dim A As Integer, B As Integer Dim Bb As Border
'Defined range to copy With Worksheets("Feuil1") Set Rg = .Range("A1:D5") End With
Set Wd = CreateObject("Word.Application") Wd.Visible = True Set Dc = Wd.Documents.Add
Set T = Dc.Tables.Add(Range:Ü.Range, _ NumRows:=Rg.Rows.Count, _ NumColumns:=Rg.Columns.Count)
For A = 1 To Rg.Rows.Count For B = 1 To Rg.Columns.Count If IsNumeric(Rg(A, B)) = True Then T.Cell(A, B).Range = Application.Round(Rg(A, B)) Else T.Cell(A, B).Range = Rg(A, B) End If Next Next
'To apply borders if necessary With T For Each C In .Range.Columns C.Borders(wdBorderHorizontal).Visible = True Next For Each P In .Range.Rows P.Borders(wdBorderVertical).Visible = True Next For A = -4 To -1 .Range.Borders(A) = True Next End With End Sub
J'ai fait insertion "module" (j'ai aussi "module de classe") puis collé les codes, changer le nom de la feuille et mis la bonne plage. Après je sais pas trop, j'ai enregistré puis je fais exécution F5, là erreur de compilation: type défini par l'utilisateur non défini, pas facile avec un débutant ! Luc
MichD
OK, il y avait une référence à Word.
Essaie celle-ci.
'---------------------------------- Sub test() Dim Rg As Range Dim Wd As Object Dim Dc As Object, C As Object Dim T As Object, P As Object Dim A As Integer, B As Integer Dim Bb As Border
'Defined range to copy With Worksheets("Feuil1") Set Rg = .Range("A1:D5") End With
Set Wd = CreateObject("Word.Application") Wd.Visible = True Set Dc = Wd.Documents.Add
Set T = Dc.Tables.Add(Range:Ü.Range, _ NumRows:=Rg.Rows.Count, _ NumColumns:=Rg.Columns.Count)
For A = 1 To Rg.Rows.Count For B = 1 To Rg.Columns.Count If IsNumeric(Rg(A, B)) = True Then T.Cell(A, B).Range = Application.Round(Rg(A, B), 2) Else T.Cell(A, B).Range = Rg(A, B) End If Next Next
'To apply borders if necessary With T For Each C In .Range.Columns C.Borders(&HFFFFFFFB).Visible = True Next For Each P In .Range.Rows P.Borders(&HFFFFFFFA).Visible = True Next For A = -4 To -1 .Range.Borders(A) = True Next End With End Sub '-------------------------------------
'----------------------------------
Sub test()
Dim Rg As Range
Dim Wd As Object
Dim Dc As Object, C As Object
Dim T As Object, P As Object
Dim A As Integer, B As Integer
Dim Bb As Border
'Defined range to copy
With Worksheets("Feuil1")
Set Rg = .Range("A1:D5")
End With
Set Wd = CreateObject("Word.Application")
Wd.Visible = True
Set Dc = Wd.Documents.Add
Set T = Dc.Tables.Add(Range:Ü.Range, _
NumRows:=Rg.Rows.Count, _
NumColumns:=Rg.Columns.Count)
For A = 1 To Rg.Rows.Count
For B = 1 To Rg.Columns.Count
If IsNumeric(Rg(A, B)) = True Then
T.Cell(A, B).Range = Application.Round(Rg(A, B), 2)
Else
T.Cell(A, B).Range = Rg(A, B)
End If
Next
Next
'To apply borders if necessary
With T
For Each C In .Range.Columns
C.Borders(&HFFFFFFFB).Visible = True
Next
For Each P In .Range.Rows
P.Borders(&HFFFFFFFA).Visible = True
Next
For A = -4 To -1
.Range.Borders(A) = True
Next
End With
End Sub
'-------------------------------------
'---------------------------------- Sub test() Dim Rg As Range Dim Wd As Object Dim Dc As Object, C As Object Dim T As Object, P As Object Dim A As Integer, B As Integer Dim Bb As Border
'Defined range to copy With Worksheets("Feuil1") Set Rg = .Range("A1:D5") End With
Set Wd = CreateObject("Word.Application") Wd.Visible = True Set Dc = Wd.Documents.Add
Set T = Dc.Tables.Add(Range:Ü.Range, _ NumRows:=Rg.Rows.Count, _ NumColumns:=Rg.Columns.Count)
For A = 1 To Rg.Rows.Count For B = 1 To Rg.Columns.Count If IsNumeric(Rg(A, B)) = True Then T.Cell(A, B).Range = Application.Round(Rg(A, B), 2) Else T.Cell(A, B).Range = Rg(A, B) End If Next Next
'To apply borders if necessary With T For Each C In .Range.Columns C.Borders(&HFFFFFFFB).Visible = True Next For Each P In .Range.Rows P.Borders(&HFFFFFFFA).Visible = True Next For A = -4 To -1 .Range.Borders(A) = True Next End With End Sub '-------------------------------------