[VBA] Caption veranderen van controls op worksheet Excel

Pagina: 1
Acties:
  • 187 views sinds 30-01-2008
  • Reageer

  • Schonhose
  • Registratie: April 2000
  • Laatst online: 30-07 21:51

Schonhose

Retro Icoon

Topicstarter
Het lukt me niet om de properties van een control dat op de worksheet staat te veranderen.

Ik heb dus een control op een worksheet en ik wil daar in VBA de caption veranderen. Controls op een userform is geen probleem.

Noch Google, Google diskussiegroeps en GoT leveren geen bevredigende resultaten op.

"The thing under my bed waiting to grab my ankle isn't real. I know that, and I also know that if I'm careful to keep my foot under the covers, it will never be able to grab my ankle." - Stephen King
Quinta: 3 januari 2005


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 25-08 14:38

OZ-Gump

terug van weggeweest

Welke stukken code heb je al gebruikt?
En als je die code debugt, wat voor meldingen krijg je dan?
Hier kunnen we / kan ik namelijk erg weinig mee...

My personal website


  • Schonhose
  • Registratie: April 2000
  • Laatst online: 30-07 21:51

Schonhose

Retro Icoon

Topicstarter
Tja, daar zit het probleem nu dan ook. Ik kan geen code schrijven omdat ik de properties van een control op de worksheet niet kan benaderen.

Van een userform kun je ze benaderen via:

userfrm.cmdOk.caption="Ok"

maar in een sheet niet, omdat de control geen naam heeft..... toch is het mogelijk want ik heb het gezien in een add-in (die beveiligt is zodat ik niet kan kijken)

Ik heb wel deze code gevonden:

code:
1
2
3
4
5
6
7
8
9
10
Sub Set_Properties
            With WorkSheets(2).CommandButton1
                .Caption = "Please click here when finished"
                .PrintObject = False
                .Shadow = True
                .TakeFocusOnClick = False
                .WordWrap = True
                .Font.Bold = True
            End With
End Sub

maar deze gebruikt als naam CommandButton1. Ik weet niet hoe die van mij heten want ik ben bezig met een upgrade van een bestaande sheet.

Ik kan nergens de naam van de control op de sheet vinden. Hopelijk werkt deze code om dus de namen tijdelijk te veranderen zodat ik weet welke het is:

code:
1
2
3
4
5
6
Dim Ndx As Long
With ActiveSheet.Buttons
   For Ndx = 1 To .Count
       .Item(Ndx).Caption = "CommandButton" & Format(Ndx)
   Next Ndx
End With


Als ik dan het juiste nummer heb kan ik eventueel nog via

code:
1
Sheet1.OLEObjects("CommandButton" & CStr(NummerButton)).Object.Caption = "New Caption"


de nieuwe header zetten.

maar dat moet ik allemaal nog testen........ >:) (komt maandag wel: nu weekend :))

[ Voor 61% gewijzigd door Schonhose op 04-12-2002 21:53 ]

"The thing under my bed waiting to grab my ankle isn't real. I know that, and I also know that if I'm careful to keep my foot under the covers, it will never be able to grab my ankle." - Stephen King
Quinta: 3 januari 2005


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 25-08 14:38

OZ-Gump

terug van weggeweest

Heb even een knoppie op een werkblad gezet en op het 'eigenschappen'-knopje geklikt en ik krijg toch zomaar te zien wat de eigenschappen zijn...
En wat is de eerste property? (Name)
Heb je de toolbar 'Control toolbar' aanstaan?

My personal website


  • Schonhose
  • Registratie: April 2000
  • Laatst online: 30-07 21:51

Schonhose

Retro Icoon

Topicstarter
OZ-Gump schreef op 05 December 2002 @ 09:37:
Heb even een knoppie op een werkblad gezet en op het 'eigenschappen'-knopje geklikt en ik krijg toch zomaar te zien wat de eigenschappen zijn...
En wat is de eerste property? (Name)
Heb je de toolbar 'Control toolbar' aanstaan?
Na controle blijkt dat de user interface zoals ik hem nu wil gebruiken een rechtstreekse kopie is uit Excel 4 (incl. de knoppen.)

Wanneer ik een nieuwe knop aanmaak gaat het wel goed en kan ik de properties benaderen (ook via VBA met bovenstaande code (zie mijn post))

De oplossing is dus het vervangen van de originele knoppen door de nieuwere knoppen waarna ik weer vrolijk verder kan coden.

Soms duur het even voordat het lampje brandt.

"The thing under my bed waiting to grab my ankle isn't real. I know that, and I also know that if I'm careful to keep my foot under the covers, it will never be able to grab my ankle." - Stephen King
Quinta: 3 januari 2005