29. september 2006 - 22:14Der er
21 kommentarer og 1 løsning
vælg fra ComboBox1 og ComboBox2
Hej eksperter
Jeg har en Userform, hvor jeg har 2 stk ComboBox og en textbox og CommandButton. jeg har 8 ark, de hedder 2006-2007 og 2007-2008 og så videre. jeg vil gerne vælger i ComboBox2, hvilken ark jeg vil skrive i. Og i ComboBox1 vælge hvilken celle, jeg vil skrive ud for. I textbox skriver jeg et tal, der skal lægges sammen med det tal, der står i arket ud for det jeg har valgt i ComboBox1. Hvis jeg ikke har formuleret mig godt nok, kan jeg sende Excel filen til jer.
Her er lidt at arbejde på. Du kan vælge fra række 1-10:
Private Sub ComboBox1_Change() If Me.ComboBox2.Value <> "" And IsNumeric(Me.ComboBox1.Value) Then Me.Label1.Caption = Sheets(Me.ComboBox2.Value).Cells(Me.ComboBox1.Value, 1).Value Else Me.Label1.Caption = "fejl" End If End Sub
Private Sub ComboBox2_Change() If Me.ComboBox2.Value <> "" And IsNumeric(Me.ComboBox1.Value) Then Me.Label1.Caption = Sheets(Me.ComboBox2.Value).Cells(Me.ComboBox1.Value, 1).Value Else Me.Label1.Caption = "fejl" End If End Sub
Private Sub CommandButton1_Click() If Not IsNumeric(Me.TextBox1.Value) Then MsgBox "Fejl. ikke tal!" Else If Me.ComboBox2.Value <> "" Then If Me.ComboBox1.Value <> "" Then Sheets(Me.ComboBox2.Value).Cells(Me.ComboBox1, 1).Value = Sheets(Me.ComboBox2.Value).Cells(Me.ComboBox1, 1).Value + Me.TextBox1.Value Else MsgBox "Ingen celle valgt!" End If Else MsgBox "Ingen ark valgt!" End If End If End Sub
Private Sub TextBox1_Change() If Not IsNumeric(Me.TextBox1.Value) Then MsgBox "Fejl. ikke tal!" End If End Sub
Private Sub UserForm_Activate() For Each ws In ThisWorkbook.Worksheets Me.ComboBox2.AddItem ws.Name Next 'Me.ComboBox2 For I = 1 To 10 Me.ComboBox1.AddItem I Next End Sub
Bemærk at der skal være en label1 med: Bemærk også at den ikke tager højde for ekstra faneblade i arket!
Private Sub ComboBox1_Change() If Me.ComboBox2.Value <> "" And IsNumeric(Me.ComboBox1.Value) Then Me.Label1.Caption = Sheets(Me.ComboBox2.Value).Cells(Me.ComboBox1.Value, 1).Value Else Me.Label1.Caption = "fejl" End If End Sub
Private Sub ComboBox2_Change() If Me.ComboBox2.Value <> "" And IsNumeric(Me.ComboBox1.Value) Then Me.Label1.Caption = Sheets(Me.ComboBox2.Value).Cells(Me.ComboBox1.Value, 1).Value Else Me.Label1.Caption = "fejl" End If End Sub
Private Sub CommandButton1_Click() If Not IsNumeric(Me.TextBox1.Value) Then MsgBox "Fejl. ikke tal!" Else If Me.ComboBox2.Value <> "" Then If Me.ComboBox1.Value <> "" Then Sheets(Me.ComboBox2.Value).Cells(Me.ComboBox1, 1).Value = Sheets(Me.ComboBox2.Value).Cells(Me.ComboBox1, 1).Value + Me.TextBox1.Value Else MsgBox "Ingen celle valgt!" End If Else MsgBox "Ingen ark valgt!" End If End If Me.Label1.Caption = Me.Label1.Caption & " + " & Me.TextBox1.Value & " = " & Sheets(Me.ComboBox2.Value).Cells(Me.ComboBox1, 1).Value End Sub
Private Sub TextBox1_Change() If Not IsNumeric(Me.TextBox1.Value) Then MsgBox "Fejl. ikke tal!" End If End Sub
Private Sub UserForm_Activate() For Each ws In ThisWorkbook.Worksheets Me.ComboBox2.AddItem ws.Name Next For I = 1 To 10 Me.ComboBox1.AddItem I Next End Sub
Jeg skulle gerne kunne sætte tal i formen fra userform2 (indsæt dyr) så de kommer i de rigtig ark. og hvis der står et tal i cellen skal den ligge talet sammen med det tal, der er der i forvejen hvis det kan lade sig gøre
Hej akyhne Ja men jeg vil gerne have det til at virke, på den måde jeg har sat op. hvis det kan lade sig gøre. hvis ikke så lig et svar, så du kan få nogle Point og tak for hjælpen
Det kan det sagtens. Jeg forstår bare ikke lige hvorfor du vil have det på den måde! Du kan jo gå ind og beskytte arket når du har lavet de rettelser du ønsker. Det er nemmere at rette direkte fra formens tekstfelter. Jeg skal kigge på det når jeg får tid.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.