15. oktober 2001 - 11:04Der er
13 kommentarer og 1 løsning
Makroer i Exel
I et regneark vil jeg gerne have indsat eksempelvis 5 linier efter hver linie (regnearket indeholder eksempelvis 5000 linier, så det at gøre det manuelt vil kræve et stort stykke arbejde). Ved at indspille en makro vil der konstant blive indsat de ønskede linier det samme sted, hvormed makroen ikke flytter sig selvom markøren er flyttet. Hvordan løses dette.
I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
Hvis du ønsker, at makroen skal arbejde ud fra det sted, hvor makøren befinder sig, skal du bare vælge at optage den med relativ reference. Det er muligt du så skal korrigere makroen lidt efterfølgende, ved at definere aktuelt område til at være Active.Cell
Hvis den derimod skal tage udgangspunkt i samme celle hver gang, skal du optage den med absolut reference.
Tak for svaret. Du har forstået spm. korrekt. Eftersom jeg ikke er en erfaren bruger af makroer, vil jeg meget gerne vide, hvorledes man udarbejder en makro med relativ reference, da jeg må konstatere at det jeg har gjort indtil nu, er at lave en makro med absolut reference.
Sub InsertLines() Dim iRow As Integer, i As Integer Dim rCell As Range \'Find nederste række Range(\"A65536\").Select Selection.End(xlUp).Select iRow = ActiveCell.Row
\'Indsæt 5 linier imellem hver For i = iRow To 2 Step -1 Rows(i & \":\" & i + 4).Select Selection.Insert Shift:=xlDown Next i
Sub InsertLines() Dim iRow As Integer, i As Integer Dim rCell As Range \'Find nederste række Range(\"A65536\").Select Selection.End(xlUp).Select iRow = ActiveCell.Row
\'Indsæt 5 linier imellem hver For i = iRow To 2 Step -1 Range(\"A\" & i & \":A\" & i + 4).EntireRow.Insert Next i
Et tillægs spm. Er det muligt at tilføje i Makroen, at den første linie skal kopieres ned i de indsatte linier. Det kunne nemlig lette arbejdet en del.
Det skal lige forståes rigtigt ! Med første linie - mener du række 1 ? eller mener du at f.eks. række 6 skal kopieres ned i alle fem linier, som bliver indsat under række 6 ?
Sub InsertLines() Dim iRow As Integer, i As Integer, ii As Integer Dim rCell As Range \'Find nederste række Range(\"A65536\").Select Selection.End(xlUp).Select iRow = ActiveCell.Row
\'Indsæt 5 linier imellem hver For i = iRow To 2 Step -1 Rows(i & \":\" & i).Copy Rows(i + 1 & \":\" & i + 5).Insert Shift:=xlDown \'Range(\"A\" & i & \":A\" & i + 4).EntireRow.Insert Next i End Sub
Et tillægsspm. igen. Hvis jeg gerne vil have kopieret et celleområde eksempel a1 til a4 ned i de resterende celler i kolonnen, hvordan løses dette?
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.