gebruik combobox op userform

Status
Niet open voor verdere reacties.

bartcorvers

Gebruiker
Lid geworden
6 apr 2012
Berichten
32
hallo iedereen, ik gebruik een combobox op een userform. Als de waarde van de combobox aangepast wordt verschijnt een inputbox welke naar een range op het werkblad vraagt.
De actie wordt correct uitgevoerd, echter indien ik op de Annuleerknop van de inputbox duw loopt de vba code vast. Wie kan mij helpen? Zie hieronder de vba code.

Code:
Private Sub ComboBox1_AfterUpdate()
Dim myRange As Range
Dim tekstwaarde As String
tekstwaarde = ComboBox1.Value
If tekstwaarde = Empty Then
Exit Sub
End If
Set myRange = Application.InputBox(prompt:="Kies cel op blad.", Type:=8)                                'code loopt vast op deze regel indien myrange =nothing
myRange.Value = tekstwaarde
End Sub

Code:
Private Sub ComboBox1_Change()
Dim myRange As Range
Dim tekstwaarde As String
tekstwaarde = ComboBox1.Value
If tekstwaarde = Empty Then
Exit Sub
End If
Set myRange = Application.InputBox(prompt:="Kies cel op blad.", Type:=8)
myRange.Value = tekstwaarde

End Sub


dank bij voorbaat Bart
 
Laatst bewerkt door een moderator:
Code:
Private Sub ComboBox1_AfterUpdate()
Dim myRange As Range
Dim tekstwaarde As String
On Error Resume Next
tekstwaarde = ComboBox1.Value
If myRange Is Nothing Then
Exit Sub
End If
Set myRange = Application.InputBox(prompt:="Kies cel op blad.", Type:=8) 'code loopt vast op deze regel indien myrange =nothing
myRange.Value = tekstwaarde
End Sub

Private Sub ComboBox1_Change()
Dim myRange As Range
Dim tekstwaarde As String
On Error Resume Next
tekstwaarde = ComboBox1.Value
If tekstwaarde = Empty Then
Exit Sub
End If

probeer deze is
 
jammer maar nu werkt de functie op zich niet meer. myRange wordt pas geset na de foutcodeopdracht waardoor dat de range altijd leeg zal zijn.
zelf weet ik niet precies hoe de vba code moet ingesteld worden op de annulatieknop van de inputbox. De eigenschappen van de inputbox hebben mij alleen geleerd dat de annulatieknop de waarde False geeft.
Ik heb dus ook al geprobeerd om een if then in te voegen na de set regel van myrange maar dan loopt vba tegen een fout op het object myrange.
 
Voeg de rode regel toe.

Code:
Set myRange = Application.InputBox(prompt:="Kies cel op blad.", Type:=8) 
 [COLOR="#FF0000"]If myRange Is Nothing Then Exit Sub[/COLOR]
myRange.Value = tekstwaarde
 
Voeg deze regel boven mijn vorig schrijven.
Code:
On Error Resume Next
 
bij mij werkt het gewoon
ik open de form typ een letter
selecteer een range
en in alle cellen die geselecteerd waren komt die letter
ook als ik annuleer geen foutmelding

maar zo moest de werking niet zijn begrijp ik
 
Laatst bewerkt:
de combobox bevat al waarden die aangegeven zijn door de eigenschap rowsource. Het is de bedoeling dat één van de bestaande waarden uit de combobox gebruikt wordt en dat die vervolgens wordt neergeschreven in de aangeduidde range in de inputbox.
 
heb ondertussen de on error regel opnieuw ingevoegd en nu gebeuren al de acties die ik wens.
Reuze bedankt!!!!
Bart Corvers
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan