Avatar billede magmat Nybegynder
26. oktober 2007 - 13:40 Der er 10 kommentarer og
1 løsning

kopiere kolonnerne a-d i en active linje

jeg lave en macro der får indholdet af 2 linjer til at bytte plads.

Den bytte området/indholdet i cellerne a-d i den aktive linje
med indholdet i samme område i linjen ovenover.

A          B            C          D

før
tekst1    tekst11      tekst111  tekst 1111
tekst2    tekst22      tekst222  tekst 2222

efter
tekst2    tekst22      tekst222  tekst 2222
tekst1    tekst11      tekst111  tekst 1111


Jeg havde tænkt mig noget med at:
Først skal området A-D kopieres til K-N i den samme linje. (den aktive linje)
Herefter kopieres linjen ovenfor ned i den aktive linje
Til sidst flyttes indholdet K-N i den aktuelle linje til kolonnen ovenfor.

Aner ikke om det kan gøres lettere. Det eneste det går ud på er at de 2 linje skal bytte plads.
Avatar billede magmat Nybegynder
26. oktober 2007 - 13:41 #1
Til sidst flyttes indholdet K-N i den aktuelle linje til A-D i linjen ovenfor. :-)
Avatar billede luffeladefoged Praktikant
26. oktober 2007 - 15:27 #2
Du kunne også bare have en hjælpekolonne E med 1 i E1 og 2 i E2 og så sortere efter denne i descending order. Idé?

Hilsen Luffe
Avatar billede jkrons Professor
26. oktober 2007 - 15:30 #3
Denne makro ombytter de førstecv fire kolonner i de to rækker:

Sub Ombyt()

    ActiveCell.Rows("1:1").EntireRow.Select
    Selection.Insert Shift:=xlDown
    ActiveCell.Offset(2, 0).Range("A1:D1").Select
    Selection.Cut Destination:=ActiveCell.Offset(-2, 0).Range("A1:D1")
    ActiveCell.Rows("1:1").EntireRow.Select
    Selection.Delete Shift:=xlUp
    Range("a1").Activate
   
End Sub
Avatar billede jkrons Professor
26. oktober 2007 - 15:31 #4
Det er vigtigt at markøren er placeret i den øverste af de to rækker, der skal ombyttes når makroen afspilles.
Avatar billede magmat Nybegynder
26. oktober 2007 - 18:37 #5
ja, det virker meget godt :-)

A
Kan man få den til at stå i den linje, der er nedenunder den aktive linje inden man startede på.
På den måde står man i den linje som har den samme tekst, som man stod i inden man kørte makroen. (gå en linje ned i forhold til starten)

B
Den macro der virker nu flytter den aktive linje, nedaf.
Det er super.
Men kan man også lave en løsning, hvor den bliver flyttet op af?
Altså hvor den bliver byttet med linjen ovenover.
Avatar billede magmat Nybegynder
26. oktober 2007 - 22:59 #6
jeg mangler vist at sige at jeg har fjernet den sidste linje i koden.
Det eneste den skal gøre anderledes er at springe en linje op til sidst.

Sub Ombyt()

    ActiveCell.Rows("1:1").EntireRow.Select
    Selection.Insert Shift:=xlDown
    ActiveCell.Offset(2, 0).Range("A1:D1").Select
    Selection.Cut Destination:=ActiveCell.Offset(-2, 0).Range("A1:D1")
    ActiveCell.Rows("1:1").EntireRow.Select
    Selection.Delete Shift:=xlUp
   
End Sub
Avatar billede jkrons Professor
27. oktober 2007 - 00:26 #7
A:

Sub Ombyt()

    ActiveCell.Rows("1:1").EntireRow.Select
    Selection.Insert Shift:=xlDown
    ActiveCell.Offset(2, 0).Range("A1:D1").Select
    Selection.Cut Destination:=ActiveCell.Offset(-2, 0).Range("A1:D1")
    ActiveCell.Rows("1:1").EntireRow.Select
    Selection.Delete Shift:=xlUp
    ActiveCell.Offset(-1, 0).Range("A1").Select
   
End Sub

B:

Sub OmbytOp()

    ActiveCell.Offset(-1, 0).Rows("1:1").EntireRow.Select
    Selection.Insert Shift:=xlDown
    ActiveCell.Offset(2, 0).Range("A1:D1").Select
    Selection.Cut Destination:=ActiveCell.Offset(-2, 0).Range("A1:D1")
    ActiveCell.Rows("1:1").EntireRow.Select
    Selection.Delete Shift:=xlUp
    ActiveCell.Offset(-2, 0).Range("A1").Select
   
End Sub
Avatar billede magmat Nybegynder
27. oktober 2007 - 10:32 #8
det er lige sådan det skulle være´.
Jeg takker
laver du et svar?
Avatar billede magmat Nybegynder
27. oktober 2007 - 10:33 #9
jeg laver lige et spørgsmål som jeg skal bruge sammen med denne macro
Avatar billede jkrons Professor
27. oktober 2007 - 23:46 #10
Undsyld det sene svar. Desværre er det arbejdsweekend, så der er ikke tid til så meget tid ved pcen.
Avatar billede magmat Nybegynder
27. oktober 2007 - 23:50 #11
det er helt ok, jeg er glad for hjælpen.
Surt med det arbejde. Det bruger man meget god fritid på :-)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester