Non ce n'est pas une question d'acn=E8 au visage mais de la=20
toute vraie informatique.=20
Voil=E0 quoi: je fais appara=EEtre des boutons =E0 cliquer sur=20
ma feuille Excel. Bien.
Mais celle-ci s'allongeant ... vers le bas =E9videmment ...=20
je "scrolle" de plus en plus et mes boutons disparaissent=20
dans le dessus de l'=E9cran.
Seule solution: utiliser une barre d'outil. Ca, ca bouge=20
pas.
Mais je voudrais tout de m=EAme ... garder mes beaux=20
moutons, oups pardon, mes beaux boutons.
Alors y a t-il un truc pour ancrer les boutons =E0 l'=E9cran=20
sans qu'ils de d=E9placent avec les scrollings?
-----Message d'origine----- rebonsoir ghislain une solution consiste à figer tes volets et de laisser ton bouton dans
la partie haute de ta feuille jps
Ghislain2 wrote:
Non ce n'est pas une question d'acnè au visage mais de la
toute vraie informatique.
Voilà quoi: je fais apparaître des boutons à cliquer sur ma feuille Excel. Bien.
Mais celle-ci s'allongeant ... vers le bas évidemment ...
je "scrolle" de plus en plus et mes boutons disparaissent
dans le dessus de l'écran.
Seule solution: utiliser une barre d'outil. Ca, ca bouge pas.
Mais je voudrais tout de même ... garder mes beaux moutons, oups pardon, mes beaux boutons.
Alors y a t-il un truc pour ancrer les boutons à l'écran sans qu'ils de déplacent avec les scrollings?
Merci pour le sourire et l'entraide
Toujours amicalement Ghislain
.
Jean-François Aubert
Salut Ghislain, une adaptation simplifiée d'une autre combine. Conditions de fonctionnement: - les boutons ou objets doivent être tous du même type(CommandButton ou Bouton ou case à cocher, etc..)
- les boutons ou objets doivent avoir un suffixe de 1 à N ( dans l'exemple CommandButton1 à 8)
Les 5 premières lignes(5 variables) peuvent être modifiées.
Autrement , je peux transmettre un fichier *:xls qui gère tous les types objets, avec choix des objets à traités.
'******************* dans le module de la feuille Private Sub Worksheet_SelectionChange(ByVal Target As Range) DesBoutonsQuiSuivent End Sub
'******************* dans un module standard Sub DesBoutonsQuiSuivent()
nb_boutons = 8 ' --->> à adapter
enLigne = False ' --->> mettre False si boutons en colonne
espace = 10 ' --->> espacement des boutons
decalCol = 3 ' --->> 1 = 1er bouton sur la 1ère colonne visible
decalLi = 5 ' --->> 1 = 1er bouton sur la 1ère ligne visible
ReDim dimensionBouton(1 To nb_boutons) Set plg = ActiveWindow.VisibleRange colPlg = plg.Columns.Count y = plg.Item(decalCol).Column x = plg.Item(colPlg * decalLi).Row x1 = Cells(x, y).Left y1 = Cells(x, y).Top
' --->> le <<CommandButton>> est à adapter With ActiveSheet.Shapes("CommandButton" & 1) If enLigne = True Then 'si les boutons sont sur 1 ligne .Left = x1 .Top = y1 dimensionBouton(1) = .Width Else 'si les boutons sont sur 1 colonne .Left = x1 .Top = y1 dimensionBouton(1) = .Height End If End With
For i = 2 To nb_boutons ' --->> le <<CommandButton>> est à adapter With ActiveSheet.Shapes("CommandButton" & i) If enLigne = True Then 'si les boutons sont sur 1 ligne For i2 = 1 To UBound(dimensionBouton) dimen = dimen + dimensionBouton(i2) Next .Left = x1 + dimen + ((i - 1) * espace) .Top = y1 dimensionBouton(i) = .Width Else 'si les boutons sont sur 1 colonne For i2 = 1 To UBound(dimensionBouton) dimen = dimen + dimensionBouton(i2) Next .Left = x1 .Top = y1 + dimen + ((i - 1) * espace) dimensionBouton(i) = .Height End If dimen = 0 End With Next Set plg = Nothing End Sub ' ajf
Jean-François Aubert {Vaudois de la Côte Lémanique}
"Ghislain2" a écrit dans le message de news:019b01c3cb3b$f3831930$ Non ce n'est pas une question d'acnè au visage mais de la toute vraie informatique.
Voilà quoi: je fais apparaître des boutons à cliquer sur ma feuille Excel. Bien.
Mais celle-ci s'allongeant ... vers le bas évidemment ... je "scrolle" de plus en plus et mes boutons disparaissent dans le dessus de l'écran.
Seule solution: utiliser une barre d'outil. Ca, ca bouge pas.
Mais je voudrais tout de même ... garder mes beaux moutons, oups pardon, mes beaux boutons.
Alors y a t-il un truc pour ancrer les boutons à l'écran sans qu'ils de déplacent avec les scrollings?
Merci pour le sourire et l'entraide
Toujours amicalement Ghislain
Salut Ghislain,
une adaptation simplifiée d'une autre combine.
Conditions de fonctionnement:
- les boutons ou objets doivent être tous du même type(CommandButton ou Bouton ou case à cocher,
etc..)
- les boutons ou objets doivent avoir un suffixe de 1 à N ( dans l'exemple CommandButton1 à 8)
Les 5 premières lignes(5 variables) peuvent être modifiées.
Autrement , je peux transmettre un fichier *:xls qui gère tous les types objets,
avec choix des objets à traités.
'******************* dans le module de la feuille
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
DesBoutonsQuiSuivent
End Sub
'******************* dans un module standard
Sub DesBoutonsQuiSuivent()
nb_boutons = 8 ' --->> à adapter
enLigne = False ' --->> mettre False si boutons en colonne
espace = 10 ' --->> espacement des boutons
decalCol = 3 ' --->> 1 = 1er bouton sur la 1ère colonne visible
decalLi = 5 ' --->> 1 = 1er bouton sur la 1ère ligne visible
ReDim dimensionBouton(1 To nb_boutons)
Set plg = ActiveWindow.VisibleRange
colPlg = plg.Columns.Count
y = plg.Item(decalCol).Column
x = plg.Item(colPlg * decalLi).Row
x1 = Cells(x, y).Left
y1 = Cells(x, y).Top
' --->> le <<CommandButton>> est à adapter
With ActiveSheet.Shapes("CommandButton" & 1)
If enLigne = True Then 'si les boutons sont sur 1 ligne
.Left = x1
.Top = y1
dimensionBouton(1) = .Width
Else 'si les boutons sont sur 1 colonne
.Left = x1
.Top = y1
dimensionBouton(1) = .Height
End If
End With
For i = 2 To nb_boutons
' --->> le <<CommandButton>> est à adapter
With ActiveSheet.Shapes("CommandButton" & i)
If enLigne = True Then 'si les boutons sont sur 1 ligne
For i2 = 1 To UBound(dimensionBouton)
dimen = dimen + dimensionBouton(i2)
Next
.Left = x1 + dimen + ((i - 1) * espace)
.Top = y1
dimensionBouton(i) = .Width
Else 'si les boutons sont sur 1 colonne
For i2 = 1 To UBound(dimensionBouton)
dimen = dimen + dimensionBouton(i2)
Next
.Left = x1
.Top = y1 + dimen + ((i - 1) * espace)
dimensionBouton(i) = .Height
End If
dimen = 0
End With
Next
Set plg = Nothing
End Sub ' ajf
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"Ghislain2" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:019b01c3cb3b$f3831930$a101280a@phx.gbl...
Non ce n'est pas une question d'acnè au visage mais de la
toute vraie informatique.
Voilà quoi: je fais apparaître des boutons à cliquer sur
ma feuille Excel. Bien.
Mais celle-ci s'allongeant ... vers le bas évidemment ...
je "scrolle" de plus en plus et mes boutons disparaissent
dans le dessus de l'écran.
Seule solution: utiliser une barre d'outil. Ca, ca bouge
pas.
Mais je voudrais tout de même ... garder mes beaux
moutons, oups pardon, mes beaux boutons.
Alors y a t-il un truc pour ancrer les boutons à l'écran
sans qu'ils de déplacent avec les scrollings?
Salut Ghislain, une adaptation simplifiée d'une autre combine. Conditions de fonctionnement: - les boutons ou objets doivent être tous du même type(CommandButton ou Bouton ou case à cocher, etc..)
- les boutons ou objets doivent avoir un suffixe de 1 à N ( dans l'exemple CommandButton1 à 8)
Les 5 premières lignes(5 variables) peuvent être modifiées.
Autrement , je peux transmettre un fichier *:xls qui gère tous les types objets, avec choix des objets à traités.
'******************* dans le module de la feuille Private Sub Worksheet_SelectionChange(ByVal Target As Range) DesBoutonsQuiSuivent End Sub
'******************* dans un module standard Sub DesBoutonsQuiSuivent()
nb_boutons = 8 ' --->> à adapter
enLigne = False ' --->> mettre False si boutons en colonne
espace = 10 ' --->> espacement des boutons
decalCol = 3 ' --->> 1 = 1er bouton sur la 1ère colonne visible
decalLi = 5 ' --->> 1 = 1er bouton sur la 1ère ligne visible
ReDim dimensionBouton(1 To nb_boutons) Set plg = ActiveWindow.VisibleRange colPlg = plg.Columns.Count y = plg.Item(decalCol).Column x = plg.Item(colPlg * decalLi).Row x1 = Cells(x, y).Left y1 = Cells(x, y).Top
' --->> le <<CommandButton>> est à adapter With ActiveSheet.Shapes("CommandButton" & 1) If enLigne = True Then 'si les boutons sont sur 1 ligne .Left = x1 .Top = y1 dimensionBouton(1) = .Width Else 'si les boutons sont sur 1 colonne .Left = x1 .Top = y1 dimensionBouton(1) = .Height End If End With
For i = 2 To nb_boutons ' --->> le <<CommandButton>> est à adapter With ActiveSheet.Shapes("CommandButton" & i) If enLigne = True Then 'si les boutons sont sur 1 ligne For i2 = 1 To UBound(dimensionBouton) dimen = dimen + dimensionBouton(i2) Next .Left = x1 + dimen + ((i - 1) * espace) .Top = y1 dimensionBouton(i) = .Width Else 'si les boutons sont sur 1 colonne For i2 = 1 To UBound(dimensionBouton) dimen = dimen + dimensionBouton(i2) Next .Left = x1 .Top = y1 + dimen + ((i - 1) * espace) dimensionBouton(i) = .Height End If dimen = 0 End With Next Set plg = Nothing End Sub ' ajf