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

opvragen gegevens en aanpassen via userform

Status
Niet open voor verdere reacties.

avesoft

Gebruiker
Lid geworden
11 apr 2011
Berichten
186
heren forumleden

heb een bestandje dat ik graag aangepast zou willen hebben

userform zou gegevens uit blad gegevens en ingevoerde gegevens moeten halen(wat ingevuld is op beide bladen)via keuze combobox order stork

via die zelfde userform zou ik graag de ontbreekende info willen aanvullen op blad ingevoerde gegevens (via andere comboboxen)

hopende weer juiste aanduiding in de goede richting


zie voorbeeld Bekijk bijlage 133457
gr arie
 
Arie, met de vragen die jij de laatste week(en) al gesteld hebt betreffende Userforms lijkt het mij toch dat jij dit al eigenhandig klaar moet kunnen spelen. Trouwens je beide Userforms staan al vol codes, ik heb ze niet getest, maar waar zit het probleem dan eigenlijk ??
 
rudi

heb id veel laaste tijd gepost en ook gevraagd waar ik de bazisbegrippen , bv een naslagboek (goed) kan vinden voor de macro,s zodat ik de macro,s kan leren begrijpen

ik ben met een zeer groot bestand bezig en heb al veel zelf gemaakt maar niet alles lukt me

dat wat ik gemaakt had liep vast in module (frmgereedmelden.Show)

gr arie
 
Laatst bewerkt:
Ik heb de volgende zaken aangepast:
  1. De lijst van de combobox voor de ordernummers heb ik korter gemaakt zodat er geen lege velden instaan maar indien er ordernummers worden toegevoegd, dan verschijnen deze automatisch in de lijst.
  2. De stijl van de comboboxen zijn nu List ipv Combo zodat de gebruikers de tekst in de combobox niet aan kan passen. Men kan nu kiezen uit Ja en nee maar met combo kan dit veranderen in bijvoorbeeld: misschien, ja maar, etc.
  3. De code is aangepast zodat gezocht wordt naar de order nummer en de gekozen waarde van de comboboxen in de bijbehorende kolommen wordt geplaatst.
Met vriendelijke groet,


Roncancio
 

Bijlagen

Roncancio

geweldig werkt perfect , nu kan ik dit weer in een groter bestand verwerken

gr arie
 
Roncancio

ik heb nog wel een vraag over kleur in een cel heeft betrekking op dit userform

standaard staat op blad , ingevoerde gegevens ,in div cellen op vaste kleur(rood)als dit gaat? zodra ik waarde op (ja) zet dat dit groen word en dat dan beide kleuren ook oplichten in combobox of textbox

is er een standaard macro voor als een cel onder / boven een bepaalde waarde komt (groen waarde onder ingegeven in dezelfde cel)(rood boven de ingegeven waarde) dit door kiezen en plaatsen van een order


ben wel al bezig met blad ingevoerde gegevens met functie voorwaardelijke op maak, heb even ander projectje bijgevoegd



gr arie
 
Laatst bewerkt:
Code:
Private Sub ComboBox1_Change()
    If Sheets("ingevoerde gegevens").Columns(1).Find(ComboBox1, , xlValues, xlWhole) Is Nothing Then Exit Sub
    sq = Sheets("ingevoerde gegevens").Columns(1).Find(ComboBox1, , xlValues, xlWhole).Offset(, 1).Resize(, 23)
        For i = 1 To UBound(sq, 2)
            Me("Textbox" & i + 1) = sq(1, i)
            Select Case UCase(Me("Textbox" & i + 1).Value)
                Case "JA"
                    CLR = vbGreen
                Case "NEE"
                    CLR = vbRed
                Case Else
                    CLR = vbWhite
            End Select
            Me("Textbox" & i + 1).BackColor = CLR
            
        Next
End Sub

Met vriendelijke groet,


Roncancio
 
Roncancio

allereerst werkt perfect ,mijn dank is groot

groter dan 0 , en kleiner dan 0 en bij 0 is dat ook mogelijk ,en dan een andere kleur (of zijn dat de standaard kleuren)

gr arie
 
Roncancio

de kleuren index heb ik inmiddels gevonden

alleen code voor groter/kleine/gelijk aan 0 zou fijn zijn
gr arie
 
Laatst bewerkt:
Code:
Private Sub ComboBox1_Change()
    If Sheets("ingevoerde gegevens").Columns(1).Find(ComboBox1, , xlValues, xlWhole) Is Nothing Then Exit Sub
    sq = Sheets("ingevoerde gegevens").Columns(1).Find(ComboBox1, , xlValues, xlWhole).Offset(, 1).Resize(, 23)
        For i = 1 To UBound(sq, 2)
            Me("Textbox" & i + 1) = sq(1, i)
            Select Case UCase(Me("Textbox" & i + 1).Value)
                Case "JA"
                    CLR = vbGreen
                Case "NEE"
                    CLR = vbRed
                Case Is < 0   'als waarde kleiner is dan 0
                
                Case 0        'als waarde gelijk is aan 0
                
                Case Is > 0   'als waarde groter is dan 0
                
                Case Is <= 0  'als waarde kleiner is dan of gelijk is aan 0
                
                Case Is >= 0  'als waarde groter is dan of gelijk is aan 0
                               
                Case Else
                    CLR = vbWhite
            End Select
            Me("Textbox" & i + 1).BackColor = CLR
            
        Next
End Sub

Met vriendelijke groet,


Roncancio
 
Roncancio

als ik textbox 22 appart een waarde wil geven (groter dan o red) gaat dit ??

als ik Case Is > 0 CLR = vbGreen in macro zet dan worden alle blanco velden ook gevuld met groen


gr arie
 
Laatst bewerkt:
Code:
Private Sub ComboBox1_Change()
    If Sheets("ingevoerde gegevens").Columns(1).Find(ComboBox1, , xlValues, xlWhole) Is Nothing Then Exit Sub
    sq = Sheets("ingevoerde gegevens").Columns(1).Find(ComboBox1, , xlValues, xlWhole).Offset(, 1).Resize(, 23)
        For i = 1 To UBound(sq, 2)
            Me("Textbox" & i + 1) = sq(1, i)
            Select Case UCase(Me("Textbox" & i + 1).Value)
                Case "JA"
                    CLR = vbGreen
                Case "NEE"
                    CLR = vbRed
                Case Is > ""
                    If i + 1 = 22 Then CLR = vbRed Else CLR = vbWhite
                Case Else
                    CLR = vbWhite
            End Select
            Me("Textbox" & i + 1).BackColor = CLR
            
        Next
End Sub

Tekstvelden blijven wit als de cel leeg is.
Indien tekstveld 22 gevuld is, dan wordt deze ook rood.

Met vriendelijke groet,


Roncancio
 
Roncancio

nou nog laatste loodje

graag textbox 23 ook groen en 22 blauw


Private Sub ComboBox1_Change()
If Sheets("ingevoerde gegevens").Columns(1).Find(ComboBox1, , xlValues, xlWhole) Is Nothing Then Exit Sub
sq = Sheets("ingevoerde gegevens").Columns(1).Find(ComboBox1, , xlValues, xlWhole).Offset(, 1).Resize(, 23)
For i = 1 To UBound(sq, 2)
Me("Textbox" & i + 1) = sq(1, i)
Select Case UCase(Me("Textbox" & i + 1).Value)
Case "JA"
CLR = vbGreen
Case "NEE"
CLR = vbRed
Case 0
CLR = vbYellow
Case Is > ""
If i + 1 = 13 Then CLR = vbGreen Else CLR = vbWhite
Case Else
CLR = vbWhite
End Select

Me("Textbox" & i + 1).BackColor = CLR

Next
End Sub

gr arie
 
Roncancio

Case Is > ""
If i + 1 = 13 Then CLR = vbGreen Else CLR = vbWhite
22
23
ik heb div geprobeerd maar lukt me niet

gr arie
 
Code:
Private Sub ComboBox1_Change()
If Not Sheets("ingevoerde gegevens").Columns(1).Find(ComboBox1, , xlValues, xlWhole) Is Nothing Then
    sq = Sheets("ingevoerde gegevens").Columns(1).Find(ComboBox1, , xlValues, xlWhole).Offset(, 1).Resize(, 23)
    For i = 1 To UBound(sq, 2)
        Me("Textbox" & i + 1) = sq(1, i)
        Select Case UCase(Me("Textbox" & i + 1).Value)
        Case "JA"
            CLR = vbGreen
        Case "NEE"
            CLR = vbRed
        Case 0
            CLR = vbYellow
        Case Is > ""
            If i + 1 = 13 Or i + 1 = 23 Then CLR = vbGreen Else CLR = vbWhite
            If i + 1 = 22 Then CLR = vbBlue Else CLR = vbWhite
        Case Else
            CLR = vbWhite
        End Select
        Me("Textbox" & i + 1).BackColor = CLR
    Next
End If
End Sub

Met vriendelijke groet,


Roncancio
 
Roncancio

code:

Case Is > ""
If i + 1 = 13 Or i + 1 = 23 Then CLR = vbGreen Else CLR = vbWhite
If i + 1 = 22 Then CLR = vbBlue Else CLR = vbWhite

geeft alleen Blue weer 13 en 23 white

gr arie
 
Code:
Private Sub ComboBox1_Change()
If Not Sheets("ingevoerde gegevens").Columns(1).Find(ComboBox1, , xlValues, xlWhole) Is Nothing Then
    sq = Sheets("ingevoerde gegevens").Columns(1).Find(ComboBox1, , xlValues, xlWhole).Offset(, 1).Resize(, 23)
    For i = 1 To UBound(sq, 2)
        Me("Textbox" & i + 1) = sq(1, i)
        Select Case UCase(Me("Textbox" & i + 1).Value)
        Case "JA"
            CLR = vbGreen
        Case "NEE"
            CLR = vbRed
        Case 0
            CLR = vbYellow
        Case Is > ""
            If i + 1 = 13 Or i + 1 = 23 Then
                CLR = vbGreen
            ElseIf i + 1 = 22 Then
                CLR = vbBlue
            Else
                CLR = vbWhite
            End If
        Case Else
            CLR = vbWhite
        End Select
        Me("Textbox" & i + 1).BackColor = CLR
    Next
End If
End Sub

Met vriendelijke groet,


Roncancio
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan