10. september 2006 - 17:00Der er
19 kommentarer og 1 løsning
Skriv/Læs til/fra Userform
Jeg har en userform Jeg vil gerne kunne hente data fra en workbook med et sheet der hedder "Samle" fra cellen D2, jeg går ud fra det skal vises i en text box (det skal ikke ændres) Jeg skal også kunne skrive forskellige celle værdier fra userform til workbook "Samle" cell B4 (eksempel).
Kan man på userform have en text box der skriver text til et sheet, I først ledige linje, og labler en given celle med dato for hvornår det er skrevet, så man kan lave en knap der pirnter de linjer ud der er skrevet.
Har kigget lidt på TIL userform FRA regneark: text1.text = Worksheets("Ark1").Cells(2, 1)
FRA userform TIL regneark: Worksheets("Ark1").Cells(2, 1) = text1.text Men kan ikke helt få det til at virke, trode lige jeg var ved at fatte det :P
Ok vil lege lidt med, Så er du klar til at hjælpe mig igen, jeg lære det vel en af dagene. Er ved at se hvormange geniale ting man kan med dette, og prøver at gøre hverdagen nemmere, for os der bruger disse regneark
Ok har fået hentet den dato der er i cell D2, kan den vises i andet format end MM/DD/ÅÅ ? Når jeg skriver til cell B4 (din B2) så skriver den ok hvad den skal, men cellen der skrives til opfatter det ikke som en dato ligegyldigt hvilket dato seprator jeg bruger . -, eller / ? Jeg ville gerne have hentet flere celler til text box 3, 4, 5 o.s.v. Jeg har sat denne ind: Private Sub TextBox3_Change() ActiveWorkbook.Sheets("Samle").Activate Me.TextBox3 = Cells(4, 5) End Sub Men den henter ikke noget, celle værdien er 36 men der står ingenting i textbox3 ??
Rem I ThisWorkBook: - men det har du måske allerede Rem =============== Rem Sub workbook_activate() Rem Load UserForm1 Rem UserForm1.Show 0 Rem End Sub
Private Sub TextBox3_Enter() 'Når der klikkes i TB3 - hentes indhold fra E4 Me.TextBox3 = Cells(4, 5) End Sub
Private Sub UserForm_activate() 'Når Userformen aktiveres ActiveWorkbook.Sheets("Samle").Activate 'Aktivere samle-Arket Me.TextBox1 = Format(Cells(2, 4), "dd-mm-yy") 'hentes fra celle D2 - vises i TB1 - dato formatteres End Sub
Private Sub Commandbutton1_click() 'Ved klik på knap i userform Cells(2, 2) = Me.TextBox2 'Insæt værdien af TB2 i celle B2 End Sub
Den kommer med en fejl: Could not set the value property. Type mismatch Og hvis jeg køre debug kommer den op og hiligther Me.TextBox3 = Cells(4, 5) fra Private Sub TextBox3_Enter() 'Når der klikkes i TB3 - hentes indhold fra E4 Me.TextBox3 = Cells(4, 5) End Sub
Rem I ThisWorkBook: - men det har du måske allerede Rem =============== Rem Sub workbook_activate() Rem Load UserForm1 Rem UserForm1.Show 0 Rem End Sub
Private Sub Label1_Click()
End Sub
Private Sub Label2_Click()
End Sub
Private Sub TextBox1_Change()
End Sub
Private Sub TextBox3_Enter() 'Når der klikkes i TB3 - hentes indhold fra E4 Me.TextBox3 = Cells(4, 5) End Sub
Private Sub TextBox2_Change()
End Sub
Private Sub UserForm_activate() 'Når Userformen aktiveres ActiveWorkbook.Sheets("Samle").Activate 'Aktivere samle-Arket Me.TextBox1 = Format(Cells(2, 4), "dd-mm-yyyy") 'hentes fra celle D2 - vises i TB1 - dato formatteres End Sub
Private Sub Commandbutton1_click() 'Ved klik på knap i userform Cells(4, 2) = Me.TextBox2 'Insæt værdien af TB2 i celle B4 End Sub
Hej Jeg går ud fra at du har oprettet en Workbook hvori du vil have oprettet din Userform og VBA-kode, -eller Opret f.eks en ny standard Workbook med 3 ark.
På Ark2 i celle A2 indtastes f.eks teksten "Test"
Opret en komandoknap på Ark2.
Opret i VBA en ny Userform. Indsæt en textboks på Userformen. Indsæt en komandoknap (ok) på userformen
Indsæt følgende kode under Userformen:
Private Sub UserForm_Activate()
With TextBox1 .Value = Sheets("Ark2").Range("A2").Value End With
TextBox1.SetFocus End Sub
Private Sub CommandButton1_Click()
Sheets("Ark1").Select
Range("A1").Select Selection.EntireRow.Insert
Range("A1").Activate
With ActiveCell .Value = TextBox1.Value .Offset(0, 2).Value = Date End With
Sheets("Ark2").Select
Range("A1").Select
End
End Sub
Indsæt følgende kode i VBA under Ark2:
Private Sub CommandButton1_Click() UserForm1.Show End Sub
-Nu kan du teste din userform ved og trykke på knappen på Ark2. Teksten i celle A2 på Ark2 kommer ind i textboksen når Userfomen startes. Ved tryk på komandoknappen på formen indsættes teksten, eller den du skriver i textboxen i celle A1 på Ark1, og der indsættes dato i celle A3. - Var det lidt i den retning du manglede ???
Håber du fik dit problem løst, hvordan det blev løst gør ikke så meget, bare du er tilfreds, og så er der jo mulighed for her på siden og få nogle nye indput, så man kan komme videre med andre ting.
Synes godt om
Ny brugerNybegynder
Din løsning...
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.