Combobox heeft schopje nodig

Status
Niet open voor verdere reacties.

Doohan

Gebruiker
Lid geworden
20 mrt 2012
Berichten
377
beste helper,

Ik heb een bestandje gemaakt met een formulier om een advies van uitlaat diameter te geven.
Het bestandje staat in de bijlage. Het probleem is de comobox achter uitlaatgassen stroom. Als je nl de 4 textboxen bovenin invuld en
op de knop bereken uitlaat diameter nadat je de combobox de juiste eenheid heb gegeven. Dan werkt alles perfect.

De enige keer dat het niet werkt is als de combobox al op m3/sec staat.
Bij m3/sec werkt het nl. niet als ik alleen het getal verander voor de combobox.
Het lijkt wel of m3/sec als het ware iedere keer een schopje nodig heeft.
wie heeft de oplossing.

Alvast vriendelijk dank
 

Bijlagen

er zijn er meer die zoiets kunnen gebruiken....

Vermijd Additem om een combobox/listbox te vullen:
Verwijder alle 'Setfocus'. Regel dat met de Tabindex.
Alle Me. voor namen van controls zijn overbodig.
De eigenschap 'Visible' regel je in de design mode voor iedere control

Code:
Private Sub Userform_Initialize()
   ExhaustFlowCombox.List=split("m³/s m³/min m³/hr")
   ExhaustFlowCombox.Listindex=0
    
   ExhaustMassCombox.list=split("kg/s kg/min kg/hr")
   cboDrukEenheid.list=split("Pa mm.W.K mbar")


Bij de onderstaande code (die qua vorm vakeer terugkomt) heeft de with ... End with totaal geen funktie.

Code:
        With Sheets("EXHAUST")
            
            Select Case cboDrukEenheid.Text
                Case "Pa"
                    maxdP = txtDPMax
                    maxdPx = txtDPMax / 9.81
                Case "mm.W.K"
                    maxdP = txtDPMax * 9.81
                    maxdPx = txtDPMax
                Case "mbar"
                    maxdP = txtDPMax * 100
                    maxdPx = txtDPMax / 9.81
            End Select
        
        End With
    End If

En waar het zin heeft laat je het na:

Code:
    With sheets("EXHAUST")
      .Range("G59") = CVar(txtTegendruk1steDemper.Text)
      .Range("G60") = CVar(txtTegendruk2deDemper.Text)
      .Range("G68") = CVar(txtTegendruk1steDemperALT.Text)
      .Range("G69") = CVar(txtTegendruk2deDemperALT.Text)
      .Range("G77") = CVar(txtTegendruk1steDemperKRI.Text)
      .Range("G78") = CVar(txtTegendruk2deDemperKRI.Text)
      .Range("i56") = maxdPx
      .Range("i65") = maxdPx
      .Range("i74") = maxdPx
   end with
 
Laatst bewerkt:
Dank je SNB

Ik ben met alleen een beginners cursus vba toch al een eind gekomen vond ik. Ik heb de code vervangen van Userform Initialize vervangen en het werkt.
En dank voor de bijsturing en het attenderen van de te lange overbodige code. Ik ga deze ook direct aanpassen. (helaas zie ik nu ook in,dat ik wat rommelige code heb geschreven)

Alvast Prettige Jaar wisseling.
 
O ja: verwijder alle samengevoegde cellen en 'select' en Activate' in VBA.

Je hebt in ieder geval al meer VBA-opleiding gehad dan ik....
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan