21. januar 2008 - 11:48Der er
10 kommentarer og 1 løsning
kopiering af data i excel baseret på input
Hej har et størrere problem. Jeg skal hente en masse data fra et program over i excell, men det kommer bare i en lang række i excel, så jeg skal have min data delt op i flere kolloner afhængigt af 2 parametre som ændre sig fra gang til gang.
Min data ser sådeles ud A B C 1 2 3 x y z og sklulle se sådanne ud A 1 x B 2 y C 3 z
Baseret på 2 inputs. er der nogle der ved hvordan jeg løser dette problem?
Jeg tænkte lidt 2 input bokse men jeg kan ikke få det til at virke ordenligt :(
Importereingen virker ikke på andre måder desværre :( det havde nu alligevel været det letteste.
DEt ser ud til at virke :D så må jeg lige hører om jeg ikke kunne få dig til at vise mig hvordan jeg får den til at loope koden hvis jeg feks angiver hvor mange gange det skal gøres.
Sub Button2_Click() Set ws = ActiveSheet antal = InputBox("antal loop ?") For t = 1 To antal rk = InputBox("del fra række ?", , rk) cl = InputBox("i kolonne ?", , "A") mylastrow = ws.Cells(ws.Rows.Count, cl).End(xlUp).Offset(0, 0).Row
Range(cl & rk & ":" & cl & mylastrow).Copy Range(cl & "1").Offset(0, 1) Range(cl & rk & ":" & cl & mylastrow).ClearContents Next t End Sub
Sub Button2_Click() Dim rk As Integer Dim cl As Integer Set ws = ActiveSheet antal = InputBox("antal loop ?") cl = 1 cl = InputBox("start fra kolonne? (som tal!)", , cl) For t = 0 To antal - 1 rk = InputBox("del fra række ?", , rk) mylastrow = ws.Cells(ws.Rows.Count, cl + t).End(xlUp).Offset(0, 0).Row Range(Cells(rk, cl + t), Cells(mylastrow, cl + t)).Copy Range(Cells(1, cl + t + 1), Cells(1, cl + t + 1)) Range(Cells(rk, cl + t), Cells(mylastrow, cl + t)).ClearContents Next t End Sub
Sub Button2_Click() Dim rk As Integer Dim cl As Integer Set ws = ActiveSheet antal = InputBox("antal loop ?") cl = 1 cl = InputBox("start fra kolonne? (som tal!)", , cl) rk = InputBox("del fra række ?", , rk) For t = 0 To antal - 1 mylastrow = ws.Cells(ws.Rows.Count, cl + t).End(xlUp).Offset(0, 0).Row Range(Cells(rk, cl + t), Cells(mylastrow, cl + t)).Copy Range(Cells(1, cl + t + 1), Cells(1, cl + t + 1)) Range(Cells(rk, cl + t), Cells(mylastrow, cl + t)).ClearContents Next t End Sub
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.