XL 2019 Masquer la bordure de la cellule active

pat66

XLDnaute Impliqué
Bonjour le forum

je souhaiterai que les bordures de Range("A:AB").Select ou de Range("A1").Select disparaissent car à l'affichage de la feuille qui est sur un fond bleu foncé, ce n'est pas très joli

Je vous remercie d'avance pour votre aide

Pat66

voila la macro que j'utilise :

Private Sub Worksheet_Activate()
Range("A:AB").Select
ActiveWindow.Zoom = True
ScrollArea = "A1:AB77"
Range("A1").Select
End Sub
 

patricktoulon

XLDnaute Barbatruc
Bonjour
et bien c'est simple
tu ne select pas!!! et tu ne zoom pas a true sur selection!!!!
tu calcule la différence de width entre le visiblerange quand le zoom est à 100 e le width de A:AB
et tu applique le coeff
moyennant comment connaitre les partie de l'application usable a éliminer du calcul

donc
VB:
Sub test()
    zooming_columns Range("A:AB")
End Sub

Function zooming_columns(rng As Variant)
    Dim p_topx, marge#
    Dim coeff#
    With ActiveWindow
        .Zoom = 100
        p_topx = (.ActivePane.PointsToScreenPixelsX(72) - .ActivePane.PointsToScreenPixelsX(0)) / 72
        marge = ((.ActivePane.PointsToScreenPixelsX(0) / p_topx) - Application.Left) * (1 + (Abs(ActiveWindow.DisplayVerticalScrollBar)))
        If TypeName(rng) = "Range" Then
            coeff = (Application.UsableWidth - marge) / rng.Width
            .Zoom = 100 * coeff
        Else
            .Zoom = 100
        End If
    End With
    [A1].Select

    ActiveSheet.ScrollArea = "A1:AB77"
End Function
 

pat66

XLDnaute Impliqué
Bonjour le fil,

un grand merci à tous les deux.
Par joli je sous entendais "pas esthétique" bien sur

Je n'ai pas essayé la solution de patricktoulon car la celle de job75 me parait beaucoup plus simple, c'est donc celle là que j'ai tésté et qui fonctionne très bien

belle journée

pat66
 

Discussions similaires