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

Knoppen actief en deactief maken

Status
Niet open voor verdere reacties.

Josno

Gebruiker
Lid geworden
7 nov 2007
Berichten
73
Is het mogelijk om knoppen actief of deactief te maken door een waarde uit een lijst. In mijn geval kolom C. Ik heb het forum afgezocht echter zie ik wel voorbeelden van een waarde in een cel. Maar kan een knop actief worden als de waarde Alcoo of Destil in Kolom C voorkomt komt en deactief worden als de waarde niet voorkomt. Deze lijst kan wel 1000 records lang zijn en varieert elke dag. Ik wil graag dat de gebruiker kan zien welke waarde voorkomt door dat de desbetreffende knoppen actief zijn

josno
 

Bijlagen

Josno, wat je vraagt is best mogelijk, maar ingewikkelder. Wat denk je van dit voorstel?
Code:
Sub Destil()

    If Range("C:C").Find("Destil") Is Nothing Then
        MsgBox "Gezochte leverancier komt niet voor in het overzicht!", vbOKOnly, "Helaas..."
        Exit Sub
    End If

[rest van je codeblokje...]

End Sub

Als je iedere knopcode hiermee laat beginnen, krijgt de gebruiker na het klikken op een knop een melding als de naam niet voor komt in de tabel. De code wordt daarna dan ook afgebroken.
Je kan trouwens je codeblokjes direct in je 'knop bij klikken' zetten. Daar hoef je geen aparte subs meer bij te zetten waar je naar moet vewijzen...

Groet, Leo
 
Josno, wat je vraagt is best mogelijk, maar ingewikkelder. Wat denk je van dit voorstel?
Code:
Sub Destil()

    If Range("C:C").Find("Destil") Is Nothing Then
        MsgBox "Gezochte leverancier komt niet voor in het overzicht!", vbOKOnly, "Helaas..."
        Exit Sub
    End If

[rest van je codeblokje...]

End Sub

Als je iedere knopcode hiermee laat beginnen, krijgt de gebruiker na het klikken op een knop een melding als de naam niet voor komt in de tabel. De code wordt daarna dan ook afgebroken.
Je kan trouwens je codeblokjes direct in je 'knop bij klikken' zetten. Daar hoef je geen aparte subs meer bij te zetten waar je naar moet vewijzen...

Groet, Leo

Sorry voor de late reactie, ik ben ermee bezig geweest en dit is een oplossing echter zou ik toch graag gaan voor het activeren van de knop als de waarde voorkomt. Echter door dat ik zoek in een kolom die al een vert.zoek functie heeft vindt hij de waarde niet. de knoppen activeren gaat wel al ik in kolom N handmatig de waarde in toets niet als dit een waarde is van uit een formule

Knoppen aan uit VB die ik hanteer

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("N:N").Find("Destil") Is Nothing Then
CommandButton2.Enabled = False
Else
CommandButton2.Enabled = True
End If
If Range("N:N").Find("Wasco") Is Nothing Then
CommandButton1.Enabled = False
Else
CommandButton1.Enabled = True
End If
If Range("N:N").Find("Alcoo") Is Nothing Then
CommandButton3.Enabled = False
Else
CommandButton3.Enabled = True
End If
End Sub

De waarde van Alcoo, Destil en Wasco komt uit de formule die staat in N

=ALS(G2="";"";VERT.ZOEKEN(G2;'G:\VOC-Elst\Magazijn\Barcodescanner data\[Overzicht prijs_code Leverancier 2e-2008.xls]Voorblad'!$A:$E;4;0))

Is hier wat aan te doen of de waarde in kolom N kan gebruikt worden voor de activering of de waarde in kolom N wordt in een andere kolom die ik kan verbergen een automatisch waarde als tekst als kolom N wordt gevuld.

JoSno
 
Dit is voldoende

Private Sub Worksheet_Change(ByVal Target As Range)
CommandButton2.Enabled = Range("N:N").Find("Destil",xlvalues,xlwhole) Is Nothing
End If
 
Dit is voldoende

Private Sub Worksheet_Change(ByVal Target As Range)
CommandButton2.Enabled = Range("N:N").Find("Destil",xlvalues,xlwhole) Is Nothing
End If

Dank je wel voor je reactie. Ik heb hem net geprobeerd maar krijg een foutmelding. Je geeft als slot aan End if maar het systeem vraag dan om een if. Als ik hier van End Sub maakt werkt hij niet. Doe ik wat fout?

JoSno


Door de zoekwaarde om te zetten in waarde door kopieeren en plakken special in een andere kolom(dmv van macro) is mijn probleem opgelost

Wderom bedankt voor de hulp
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan