Jeg er helt sikker på at jeg har læst om det, men kan ikke finde det
jeg vil have flyttet (kopieret) værdierne i kolonnerne [H;M] til [I;N]
Nærmest copy+paste indbygget i makroen
på forhånd tak
Kopiere en hel kolonne (LØST)
Moderators: Lodahl, LarsBrandi
-
- Posts: 26
- Joined: 6. Aug 2009 22:25
- Location: nakskov
Kopiere en hel kolonne (LØST)
Last edited by Jens Præst on 6. Apr 2010 21:59, edited 2 times in total.
-
- Posts: 80
- Joined: 28. Feb 2007 16:53
- Location: Esbjerg
-
- Posts: 26
- Joined: 6. Aug 2009 22:25
- Location: nakskov
Jeg har lavet en løsning, ikke helt elegant men det virker
sub Flytraekker
Dim StatusCelle as Object,status as string
DIM i as integer, j as integer, oDuk as object, oArk as object
DIM C_1Celle as object,C_1 as long
DIM C_2Celle as Object, C_2 as long
DIM SpillerNavnCelle as object,SpillerNavn as string
oDok=ThisComponent
oArk=oDok.Sheets.getByName("Ark1")
i=4
'8 - 14
j=12
SpillerNavnCelle=oArk.getcellbyposition(6,i)'Navn på spiller i pastet rangliste
SpillerNavn=SpillerNavnCelle.getstring
'print "Opdaterer spillerliste"
StatusCelle=oArk.getcellbyposition(1,0)
On Error Resume Next
Status=StatusCelle.setstring("Kopiere Celler")
DO WHILE SpillerNavn <Do>6
C_1Celle=oArk.getcellbyposition(j,i)
C_1=C_1Celle.getvalue
j=j+1
C_2Celle=oArk.getcellbyposition(j,i)
On Error Resume Next
C_2=C_2Celle.setvalue(C_1)
j=j-2
Loop
i=i+1
j=12
SpillerNavnCelle=oArk.getcellbyposition(6,i)'Navn på spiller i pastet rangliste
SpillerNavn=SpillerNavnCelle.getstring
Loop
end sub
Jeg har lige læst følge måde at indsætte værdier på
Cell= sheet.getCellByPosition(0,0)
Cell.Value = [tal] V Cell.String = [tekst]
Jeg har bare ikke fået skrevet det ind i makroen endnu
Hvis der er nogle som har en mere elegant, og hurtigere, måde at gøre det på. Så er jeg ikke bleg for at kigge grundigt efter
EDITT
Efter at have læst lidt hos Andrew Pitonyak, har jeg fundet en løsning jeg er særdeles tilfreds med
sub Flytraekker
Dim StatusCelle as Object,status as string
DIM i as integer, j as integer, oDuk as object, oArk as object
DIM C_1Celle as object,C_1 as long
DIM C_2Celle as Object, C_2 as long
DIM SpillerNavnCelle as object,SpillerNavn as string
oDok=ThisComponent
oArk=oDok.Sheets.getByName("Ark1")
i=4
'8 - 14
j=12
SpillerNavnCelle=oArk.getcellbyposition(6,i)'Navn på spiller i pastet rangliste
SpillerNavn=SpillerNavnCelle.getstring
'print "Opdaterer spillerliste"
StatusCelle=oArk.getcellbyposition(1,0)
On Error Resume Next
Status=StatusCelle.setstring("Kopiere Celler")
DO WHILE SpillerNavn <Do>6
C_1Celle=oArk.getcellbyposition(j,i)
C_1=C_1Celle.getvalue
j=j+1
C_2Celle=oArk.getcellbyposition(j,i)
On Error Resume Next
C_2=C_2Celle.setvalue(C_1)
j=j-2
Loop
i=i+1
j=12
SpillerNavnCelle=oArk.getcellbyposition(6,i)'Navn på spiller i pastet rangliste
SpillerNavn=SpillerNavnCelle.getstring
Loop
end sub
Jeg har lige læst følge måde at indsætte værdier på
Cell= sheet.getCellByPosition(0,0)
Cell.Value = [tal] V Cell.String = [tekst]
Jeg har bare ikke fået skrevet det ind i makroen endnu
Hvis der er nogle som har en mere elegant, og hurtigere, måde at gøre det på. Så er jeg ikke bleg for at kigge grundigt efter

EDITT
Efter at have læst lidt hos Andrew Pitonyak, har jeg fundet en løsning jeg er særdeles tilfreds med
Code: Select all
sub FlytCeller
DIM OCells1, oCells2
DIM orows1(),orows2()
dim Odok, oArk
oDok = ThisComponent
oArk = ThisComponent.CurrentController.Activesheet
ocells1=oark.getcellrangebyposition(16,1,27,1505)
ocells2=oark.getcellrangebyposition(18,1,29,1505)
'ocells1=oark.getcellrangebyname("Q1:AB1505")
orows1=ocells1.getdata()
'Ocells2=oark.getcellrangebyname("S1:AD1505")
on error resume next
orows2=ocells2.setdata(orows1)
end sub