• 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.

Naam commandbutton wijzigen

Status
Niet open voor verdere reacties.

bowlingman

Gebruiker
Lid geworden
17 okt 2007
Berichten
433
Hallo,
Ik heb op mijn sheet cmb's gezet welke bepaalde handelingen moeten uitvoeren en wanneer dit gebeurt ook de naam wijzigt van de cmb.
Ik heb daarvoor in een module de volgende code
Code:
Sub kolommen()
With Sheets("LigaData")
    Range("BijkomendeGegevens").Select
    If Selection.EntireColumn.Hidden = False Then
        Selection.EntireColumn.Hidden = True
        CommandButton1.Caption = "Toon Kolommen"
    Else
        Selection.EntireColumn.Hidden = False
        CommandButton1.Caption = "Verberg Kolommen"
    End If
    Range("A1").Select
End With
End Sub
Roep deze op de sheet "LigaData"aan met
Code:
Call kolommen
maar dan krijg ik de foutmelding "Object vereist" op de regel "Commandbutton1.Caption"
Als ik dezelfde code op de sheet "LigaData" zelf zet (zonder de With/End With)werkt alles wel correct
De Range is een bereik van verschillende kolommen op de sheet "LigaData"
Iemand die mij kan helpen

Grtjs.
Armand
 
Laatst bewerkt:
Je gebruikt wel het With statement maar doet daar verder niets mee.
Plaats je document.
 
Laatst bewerkt:
Zou een punt het verschil kunnen maken?
Code:
[COLOR=#ff0000].[/COLOR][COLOR=#333333]CommandButton1.Caption = "Verberg Kolommen"[/COLOR]
 
Laatst bewerkt:
Maak er eens dit van:
Code:
Sub kolommen()
    With Range("BijkomendeGegevens")
        .EntireColumn.Hidden = Not .EntireColumn.Hidden
        ActiveSheet.CommandButton1.Caption = IIf(.EntireColumn.Hidden, "Toon kolommen", "Verberg kolommen")
    End With
End Sub
 
Laatst bewerkt:
Super bedankt helpers.
Met de oplossing van Jack is het opgelost.
Die van Ed ga ik ook nog eens uittesten, kwestie van minder regels in de code.

Grtjs.
Armand
 
Hallo Ed,
Ik heb voor de andere cmb's geprobeert om Uw code aan te passen, maar dat lukt niet
Mijn code voor de koppen (niet aangepast)
Code:
Sub Koppen()
With Sheets("LigaData")
    If ActiveWindow.DisplayHeadings = True Then
        ActiveWindow.DisplayHeadings = False
        .cmbKoppenTonenVerbergen.Caption = "Toon Koppen"
    Else
        ActiveWindow.DisplayHeadings = True
        .cmbKoppenTonenVerbergen.Caption = "Verberg Koppen"
    End If
End With
End Sub
Mijn aangepaste code
Code:
Sub Koppen()
With Sheets("LigaData")
    .ActiveWindow.DisplayHeadings = Not .ActiveWindow.DisplayHeadings
    ActiveSheet.cmbKoppenTonenVerbergen.Caption = IIf(.ActiveWindow.DisplayHeadings, "Toon Koppen", "Verberg Koppen")
End With
End Sub
En ik heb ook nog de code voor het verbergen van de scrollbars staan
Code:
Private Sub cmbScroll_Click()
With sheets("LigaData")
    If ActiveWindow.DisplayHorizontalScrollBar And ActiveWindow.DisplayVerticalScrollBar = True Then
        ActiveWindow.DisplayHorizontalScrollBar = False
        ActiveWindow.DisplayVerticalScrollBar = False
        .cmbScroll.Caption = "Toon Scrollbar"
    Else
        ActiveWindow.DisplayHorizontalScrollBar = True
        ActiveWindow.DisplayVerticalScrollBar = True
        .cmbScroll.Caption = "Verberg Scrollbar"
    End If
End With
End Sub
 
Al gevonden.
Had per ongeluk ook een punt gezet voor "ActiveWindow.DisplayHeadings"

Grtjs.
Armand
 
Toch nog een vraagje over bericht #8
De volgende module werkt wel
Code:
Sub Scrollen()
With Sheets("LigaData")
    If ActiveWindow.DisplayHorizontalScrollBar And ActiveWindow.DisplayVerticalScrollBar = True Then
        ActiveWindow.DisplayHorizontalScrollBar = False
        ActiveWindow.DisplayVerticalScrollBar = False
        .cmbScroll.Caption = "Toon Scrollbar"
    Else
        ActiveWindow.DisplayHorizontalScrollBar = True
        ActiveWindow.DisplayVerticalScrollBar = True
        .cmbScroll.Caption = "Verberg Scrollbar"
    End If
End With
End Sub
En deze niet
Code:
Sub Scrollen()
With Sheets("LigaData")
    ActiveWindow.DisplayHorizontalScrollBar = Not ActiveWindow.DisplayHorizontalScrollBar And ActiveWindow.DisplayVerticalScrollBar = Not ActiveWindow.DisplayVerticalScrollBar
    ActiveSheet.cmbScroll.Caption = IIf(ActiveWindow.DisplayHorizontalScrollBar And ActiveWindow.DisplayVerticalScrollBar, "Verberg Scrollbar", "Toon Scrollbar")
End With
End Sub
En kan ik deze module ook gebruiken op verschillende sheets met verschillende namen

Grtjs.
Armand
 
Laatst bewerkt:
als elke knop op elk blad dezelfde naam heeft
kan deze in een module
Code:
Sub Scrollen()
  With ActiveSheet
    ActiveWindow.DisplayVerticalScrollBar = Not ActiveWindow.DisplayVerticalScrollBar
    ActiveWindow.DisplayHorizontalScrollBar = Not ActiveWindow.DisplayHorizontalScrollBar
    .cmbScroll.Caption = IIf(ActiveWindow.DisplayHorizontalScrollBar, "Verberg Scrollbar", "Toon Scrollbar")
  End With
End Sub
 
Bedankt Jack,

Werkt nu wel.
Alleen dan gebeuren de events op alle sheets, maar dat is geen ramp.

Grtjs.
Armand
 
Nog even een vraagje
Kan je onderstaande code (is maar een probeersel)
Code:
Sub Scrollen2()
With Sheets("AlleScores")
     If ActiveWindow.ScrollRow = 253 Then
     .cmbScrollen.Caption = "Spelers"
     End If
     If ActiveWindow.ScrollRow = 3 Then
     .cmbScrollen.Caption = "Teams"
     End If
End With
End Sub
schrijven in de vorm van deze
Code:
Sub Scrollen2()
With Range("AlleScoresSpelers")
        .EntireRow.Hidden = Not .EntireRow.Hidden
        ActiveSheet.cmbScrollen.Caption = IIf(.EntireRow.Hidden, "Spelers", "Teams")
    End With
End Sub

Grtjs.
Armand
 
Je kan je probeersel even proberen natuurlijk.
 
Hallo Harry,

Met de eerste code (het probeersel) gebeurt er niets.
Daarom heb ik de rows van de spelers benoemd als een bereik en het dan opgelost met de tweede code.
Was enkel maar een vraagje, om te weten of dit ook in die vorm kon.

Grtjs.
Armand
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan