• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

disable button

Status
Niet open voor verdere reacties.

conceal

Gebruiker
Lid geworden
29 mrt 2007
Berichten
73
Hi,

Op m'n sheet heb ik een aantal buttons staan (geen command buttons). Nu weet ik dat ik in Visual Basic een button zichtbaar en onzichtbaar kan maken en noem maar op. Ik weet echter niet hoe ik in Excel met behulp van VBA een knop kan aanpassen. De naam kan ik ook niet veranderen, wat ik raar vind (wel de tekst op de knop, maar niet de naam van de knop zelf). Ik wil met name graag bepaalde knoppen 'uitzetten' zodat deze niet gekozen kunnen worden als er voor een andere optie gekozen is. Ik heb nu het volgende, maar dit werkt niet:

Code:
Sheets("Input").Select
ActiveSheet.Shapes("Button 49").disable
ActiveSheet.Shapes("Button 48").enable

Alvast bedankt!!!

Groet,
Maikel
 
Je zou de knoppen kunnen verbergen op het moment dat ze niet gebuikt mogen worden.

Code
Code:
ActiveSheet.Shapes("Button 49").Visible = False
ActiveSheet.Shapes("Button 48").Visible = True
 
Hi Jan,

Het punt is juist dat ik de knoppen wel graag zie, maar dat ze niet te gebruiken zijn. Daarnaast heb ik graag dat ik de naam kan aanpassen.

Groet,
Maikel
 
Hi Jan,

Zeer creatief!!! Ik weet inmiddels wel hoe de je naam kunt aanpassen. Linksbovenin heb je een 'celverwijzing' (naast de formulebalk). Daar staat de naam in van hetgeen je geselecteerd hebt. En daar kun je dan ook de naam wijzigen. Maar goed, de oplossing zoals je die hebt is niet geheel wat ik in gedachte had... dus ik blijf nog even zoeken...

Groet,
Maikel
 
Namen aanpassen kan dus wel en nog vrij simpel ook.

Namen opvragen:
Code:
Sub shapenamen()
For i = 1 To ActiveSheet.Shapes.Count
  Cells(i, 1).Value = "Naam van Shape " & i & " is "
  Cells(i, 2).Value = ActiveSheet.Shapes(i).Name
Next i
End Sub

Hernoemen

Code:
Sub hernoemShape()
For i = 1 To ActiveSheet.Shapes.Count
  If ActiveSheet.Shapes(i).Name = "Rectangle 3" Then
      ActiveSheet.Shapes(i).Name = "Rechthoek 2"
  End If
Next i
End Sub

Deze code losgelaten op het voorbeeldje wat eerder geplaatst is.
 
Hi Jan,

Met behulp van je tips heb ik voor de volgende oplossing gekozen:

Code:
'Knopmin uitzetten
ActiveSheet.Shapes("Knopmin").Select
Selection.Characters.Font.ColorIndex = 3
Selection.Enabled = False
'Knop1 aanzetten
ActiveSheet.Shapes("Knop1").Select
Selection.Characters.Font.ColorIndex = xlAutomatic
Selection.Enabled = True

Bedankt voor je hulp!!!

Groet,
Maikel
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan