SFDocuments.Calc tjeneste

Det delte biblioteket SFDocuments gir en rekke metoder og egenskaper for å forenkle administrasjon og håndtering av LibreOffice-dokumenter.

Tjenesten SFDocuments.Calc er en underklasse av SFDocuments.Document tjeneste. Alle metoder og egenskaper definert for Dokument-tjenesten kan også nås ved å bruke en Calc-tjenesteforekomst.

Tjenesten Calc er fokusert på:

note

Denne hjelpesiden beskriver metoder og egenskaper som bare gjelder for Calc-dokumenter.


Tjenestepåkallelse

F√łr du bruker Calc-tjenesten, m√• ScriptForge-biblioteket lastes eller importeres:

note

‚ÄĘ Grunnleggende makroer krever √• laste ScriptForge-biblioteket ved hjelp av f√łlgende setning:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

‚ÄĘ Python-skript krever import fra scriptforge-modulen:
fra scriptforge import CreateScriptService


Tjenesten Calc er nært knyttet til UI-tjenesten til ScriptForge-biblioteket. Nedenfor er noen eksempler på hvordan Calc-tjenesten kan påkalles.

I Basic

Kodesnutten nedenfor oppretter en Calc-tjenesteforekomst som tilsvarer det aktive Calc-dokumentet.


    Set oDoc = CreateScriptService("Calc")
  

En annen m√•te √• opprette en forekomst av Calc-tjenesten p√• er √• bruke UI-tjenesten. I f√łlgende eksempel opprettes et nytt Calc-dokument og oDoc er en Calc-tjenesteforekomst:


    Dim ui As Object, oDoc As Object
    Set ui = CreateScriptService("UI")
    Set oDoc = ui.CreateDocument("Calc")
  

Eller ved å bruke OpenDocument-metoden fra UI-tjenesten:


    Set oDoc = ui.OpenDocument("C:\Documents\MyFile.ods")
  

Det er også mulig å instansiere Calc-tjenesten ved å spesifisere et vindusnavn for CreateScriptService-metoden:


    Dim oDoc As Object
    Set oDoc = CreateScriptService("SFDocuments.Calc", "MyFile.ods")
  

I eksemplet ovenfor er "MyFile.ods" navnet på et åpent dokumentvindu. Hvis dette argumentet ikke er oppgitt, vurderes det aktive vinduet.

Det er ogs√• mulig √• starte Calc-tjenesten ved √• bruke dokumentet som refereres til av ThisComponent. Dette er spesielt nyttig n√•r du kj√łrer en makro fra Basic IDE.


    Dim oDoc As Object
    Set oDoc = CreateScriptService("Calc", ThisComponent)
  

Det anbefales √• frigj√łre ressurser etter bruk:


    Set oDoc = oDoc.Dispose()
  

Men hvis dokumentet ble lukket med CloseDocument-metoden, blir det un√łdvendig √• frigj√łre ressurser ved √• bruke kommandoen beskrevet ovenfor.

I Python

    myDoc = CreateScriptService("Calc")
  

    ui = CreateScriptService("UI")
    myDoc = ui.CreateDocument("Calc")
  

    myDoc = ui.OpenDocument(r"C:\Documents\MyFile.ods")
  

    myDoc = CreateScriptService("SFDocuments.Calc", "MyFile.ods")
    myDoc.Dispose()
  

    bas = CreateScriptService("Basic")
    myDoc = CreateScriptService("Calc", bas.ThisComponent)
  
tip

Bruken av prefikset "SFDocuments." mens du anroper tjenesten er valgfritt.


Definisjoner

Mange metoder krever et "Ark" eller et "Område" som argument. Enkeltceller betraktes som et spesialtilfelle av et Område.

Begge kan uttrykkes enten som en streng eller som en referanse (= objekt) avhengig av situasjonen:

Eksempel:

Eksemplet nedenfor kopierer data fra dokument A (åpnet som skrivebeskyttet og skjult) til dokument B.

I Basic

    Dim oDocA As Object, oDocB As Object
    Set oDocA = ui.OpenDocument("C:\Documents\FileA.ods", Hidden := True, ReadOnly := True)
    Set oDocB = ui.OpenDocument("C:\Documents\FileB.ods")
    oDocB.CopyToRange(oDocA.Range("SheetX.D4:F8"), "D2:F6") 'CopyToRange(source, target)
  
I Python

    docA = ui.OpenDocument(r"C:\Documents\FileA.ods", hidden = True, readonly = True)
    docB = ui.OpenDocument(r"C:\Documents\FileB.ods")
    docB.CopyToRange(docA.Range("SheetX.D4:F8"), "D2:F6")
  

SheetName

Enten arknavnet som en streng eller et objekt produsert av egenskapen .Ark.

Snarveien "~" (tilde) representerer gjeldende ark.

RangeName

Enten en streng som angir et sett med sammenhengende celler plassert i et ark av gjeldende forekomst eller et objekt produsert av egenskapen .Område.

Snarveien "~" (tilde) representerer gjeldende utvalg eller det f√łrste valgte omr√•det hvis flere omr√•der er valgt.

Snarveien "*" representerer alle brukte celler.

Arknavnet er valgfritt n√•r du definerer et omr√•de. Hvis det ikke er oppgitt noe arknavn, brukes det aktive arket. Omkringliggende enkeltanf√łrselstegn og $-tegn er tillatt, men ignoreres.

N√•r du spesifiserer et ArkNavne som en streng, kreves det bruk av enkle anf√łrselstegn for √• omslutte arknavnet hvis navnet inneholder tomme mellomrom " " eller punktum ".".

Eksemplene nedenfor illustrerer i hvilke tilfeller bruk av enkle anf√łrselstegn er obligatorisk:


      ' Bruk av enkle anf√łrselstegn er valgfritt
      oDoc.clearAll("SheetA.A1:B10")
      oDoc.clearAll("'SheetA'.A1:B10")
      ' Bruk av enkle anf√łrselstegn er p√•krevd
      oDoc.clearAll("'Sheet.A'.A1:B10")
    
tip

Bortsett fra egenskapen GjeldendeUtvalg, vurderer tjenesten Calc bare enkeltområder med celler.


Eksempler på gyldige områder

1) $'ArkX'.D2
2) $D$2

En enkelt celle

1) $'ArkX'.D2:F6
2) D2:D10

Enkelt område med flere celler

$'ArkX'.*

Alle brukte celler i det aktuelle arket

1) $'Ark'.AS:A (kolonne A)
2) 3:5 (rad 3 til 5)

Alle celler i sammenhengende kolonner eller rader opp til den sist brukte cellen

mittOmråde

Et område kalt "mittOmråde" på regnearknivå

1) ~.someRange
2) ArkX.someRange

Et områdenavn på arknivå

myDoc.Range("SheetX.D2:F6")

Et område innenfor arket SheetX i filen knyttet til myDoc Calc-forekomsten

~.~ eller ~

Det gjeldende utvalget i det aktive arket


Egenskaper

Alle egenskapene som er generiske for ethvert dokument er implisitt også gjeldende for Calc-dokumenter. For mer informasjon, les hjelpesiden for dokumenttjeneste.

Egenskapene som er spesifikt tilgjengelige for Calc-dokumenter er:

Navn

Skrivebeskyttet

Argument

Returtype

Beskrivelse

CurrentSelection

Nei

Ingen

Strenger eller en rekke strenger

Det enkelt valgte området som en streng eller listen over valgte områder som en matrise.

FirstCell

Ja

Arknavn eller områdenavn som streng

String

Returnerer den f√łrste brukte cellen i et gitt omr√•de eller ark.

FirstColumn

Ja

Arknavn eller områdenavn som streng

Long

Returnerer kolonnenummeret lengst til venstre i et gitt område eller ark.

FirstRow

Ja

Arknavn eller områdenavn som streng

Long

Returnerer det √łverste radnummeret i et gitt omr√•de eller ark.

Height

Ja

Områdenavn som streng

Long

Antall rader (>= 1) i det gitte området.

LastCell

Ja

Arknavn eller områdenavn som streng

String

Returnerer den sist brukte cellen i et gitt område eller ark.

LastColumn

Ja

Arknavn eller områdenavn som streng

Long

Den sist brukte kolonnen i et gitt område eller ark.

LastRow

Ja

Arknavn eller områdenavn som streng

Long

Den sist brukte raden i et gitt område eller ark.

Range

Ja

Områdenavn som streng

Object

En områdereferanse som kan brukes som argument for metoder som Kopier til område.

Region

Ja

Områdenavn som streng

String

Returnerer adressen til det minste området som inneholder det angitte området, slik at området er omgitt av tomme celler eller arkkanter. Dette tilsvarer å bruke snarveien til det angitte området.

Sheet

Ja

Arknavn som streng

Object

En arkreferanse som kan brukes som argument for metoder som Kopier ark.

SheetName

Ja

Områdenavn som streng

String

Returnerer arknavnet for en gitt områdeadresse.

Sheets

Ja

Ingen

Matrise med strenger

Listen med navn på alle eksisterende ark.

Width

Ja

Områdenavn som streng

Long

Antall kolonner (>= 1) i det gitte området.

XCellRange

Ja

Områdenavn som streng

Object

Et com.sun.star.Table.XCellRange UNO-objekt.

XSheetCellCursor

Ja

Områdenavn som streng

Object

Et com.sun.star.sheet.XSheetCellCursor UNO-objekt. Etter √• ha flyttet mark√łren, kan den resulterende omr√•deadressen n√•s gjennom AbsoluteName UNO-egenskapen til mark√łrobjektet, som returnerer en strengverdi som kan brukes som argument for egenskaper og metoder for Calc-tjenesten.

XSpreadsheet

Ja

Arknavn som streng

Object

Et com.sun.star.sheet.XSpreadsheet UNO-objekt.


tip

Bes√łk nettstedet til LibreOffice API Dokumentasjonen for √• l√¶re mer om XCellRange, XSheetCellCursor og XSpreadsheet UNO-objekter.


Metoder

Liste over metoder i Calc-tjenesten

A1Style
Activate
Charts
ClearAll
ClearFormats
ClearValues
CompactLeft
CompactUp
CopySheet
CopySheetFromFile
CopyToCell
CopyToRange
CreateChart
CreatePivotTable
DAvg

DCount
DMax
DMin
DSum
ExportRangeToFile
Forms
GetColumnName
GetFormula
GetValue
ImportFromCSVFile
ImportFromDatabase
InsertSheet
MoveRange
MoveSheet
Offset

OpenRangeSelector
PrintOut
Printf
RemoveDuplicates
RemoveSheet
RenameSheet
SetArray
SetCellStyle
SetFormula
SetValue
ShiftDown
ShiftLeft
ShiftRight
ShiftUp
SortRange


A1Style

Returnerer en områdeadresse som en streng basert på ark koordinater, dvs. rad- og kolonnenummer.

Hvis bare et par koordinater er gitt, returneres en adresse til en enkelt celle. Ytterligere argumenter kan spesifisere cellen nederst til h√łyre i et rektangul√¶rt omr√•de.

Syntaks:

svc.A1Style(row1: int, column1: int, row2: int = 0; column2: int = 0; sheetname: str = "~"): str

Parametre:

rad1, kolonne1: Spesifiser rad- og kolonnenumrene til cellen √łverst til venstre i omr√•det som skal vurderes. Rad- og kolonnenummer starter p√• 1.

rad2, kolonne2: Spesifiser rad- og kolonnenumrene til cellen nederst til h√łyre i omr√•det som skal vurderes. Hvis disse argumentene ikke er oppgitt, eller hvis verdier som er mindre enn rad1 og kolonne1 er gitt, er adressen til enkeltcelleomr√•det representert av rad1 og kolonne1 som returneres.

arknavn: Navnet på arket som skal legges til den returnerte områdeadressen. Arket må eksistere. Standardverdien er "~" som tilsvarer det aktive arket.

Eksempel:

Eksemplene nedenfor i Basic og Python anser at "Ark1" er det aktive arket.

I Basic

    Set oDoc = CreateScriptService("Calc")
    addr1 = oDoc.A1Style(1, 1) ' '$Sheet1'.$A$1
    addr2 = oDoc.A1Style(2, 2, 3, 6) ' '$Sheet1'.$B$2:$F$3
    addr3 = oDoc.A1Style(2, 2, 0, 6) ' '$Sheet1'.$B$2
    addr4 = oDoc.A1Style(3, 4, 3, 8, "Sheet2") ' '$Sheet2'.$D$3:$H$3
    addr5 = oDoc.A1Style(5, 1, SheetName := "Sheet3") ' '$Sheet3'.$A$5
  
I Python

    doc = CreateScriptService("Calc")
    addr1 = doc.A1Style(1, 1) # '$Sheet1'.$A$1
    addr2 = doc.A1Style(2, 2, 3, 6) # '$Sheet1'.$B$2:$F$3
    addr3 = doc.A1Style(2, 2, 0, 6) # '$Sheet1'.$B$2
    addr4 = doc.A1Style(3, 4, 3, 8, "Sheet2") # '$Sheet2'.$D$3:$H$3
    addr5 = doc.A1Style(5, 1, sheetname="Sheet3") # '$Sheet3'.$A$5
  
tip

Metoden A1Style kan kombineres med alle de mange egenskapene og metodene til Calc-tjenesten som krever et område som argument, for eksempel GetValue, GetFormula, ClearAll osv.


Activate

Hvis argumentet arknavn er oppgitt, aktiveres det gitte arket og det blir det valgte arket. Hvis argumentet er fraværende, aktiveres dokumentvinduet.

Syntaks:

svc.Activate(sheetname: str = ""): bool

Parametre:

arknavn: Navnet på arket som skal aktiveres i dokumentet. Standardverdien er en tom streng, noe som betyr at dokumentvinduet vil aktiveres uten å endre det aktive arket.

Eksempel:

Eksemplet aktiverer arket kalt "Ark4" i det aktive dokumentet.

I Basic

    Dim ui as Variant, oDoc as Object
    Set ui = CreateScriptService("UI")
    Set oDoc = ui.GetDocument(ui.ActiveWindow)
    oDoc.Activate("Sheet4")
  
I Python

    ui = CreateScriptService("UI")
    myDoc = ui.GetDocument(ui.ActiveWindow)
    myDoc.Activate("Sheet4")
  
tip

Aktivering av et ark gir mening bare hvis det utf√łres p√• et Calc-dokument. For √• v√¶re sikker p√• at du har et Calc-dokument for h√•nden kan du bruke egenskapen isCalc til dokumentobjektet, som returnerer Sann hvis det er et Calc-dokument og Usann ellers.


Charts

Returnerer enten listen med navnene på alle kartobjekter i et gitt ark eller en enkelt Diagram tjenesteforekomst.

Syntaks:

svc.Charts(sheetname: str, chartname: str = ""): obj

Parametre:

arknavn: Navnet på arket som listen over diagrammer skal hentes fra eller hvor det angitte diagrammet er plassert.

kartnavn: Det brukerdefinerte navnet på diagramobjektet som skal returneres. Hvis diagrammet ikke har et brukerdefinert navn, kan det interne objektnavnet brukes. Hvis dette argumentet er fraværende, returneres listen over diagramnavn i det angitte arket.

tip

Bruk sidefeltet Navigator for å sjekke navnene som er tildelt diagrammer under kategorien OLE-objekter.


Eksempel:

I Basic

Eksemplet nedenfor viser antall kartobjekter i "Ark1".


    Dim arrNames as Object
    arrNames = oDoc.Charts("Sheet1")
    MsgBox "There are " & UBound(arrNames) + 1 & " charts in Sheet1"
  

F√łlgende eksempel gir tilgang til diagrammet kalt "MyChart" i "Ark1" og skriver ut typen.


    Dim oChart as Object
    oChart = oDoc.Charts("Sheet1", "MyChart")
    MsgBox oChart.ChartType
  
I Python

    bas = CreateScriptService("Basic")
    chart_names = doc.Charts("Sheet1")
    bas.MsgBox(f"There are {len(chart_names)} charts in Sheet1")
  

    chart = doc.Charts("Sheet1", "MyChart")
    bas.MsgBox(chart.ChartType)
  

ClearAll

Sletter alt innhold og formater for det gitte området.

En filterformel kan spesifiseres for å bestemme hvilke celler som skal påvirkes.

Syntaks:

svc.ClearAll(range: str, opt filterformula: str, opt filterscope: str)

Parametre:

område: Området som skal slettes, som en streng.

filterformula: En kalkulasjonsformel som skal brukes på det gitte området for å bestemme hvilke celler som vil bli påvirket. Den angitte formelen må returnere Sann eller Usann. Hvis dette argumentet ikke er spesifisert, påvirkes alle cellene i området.

filteromfattning: Bestemmer hvordan filterformel utvides til det gitte omr√•det. Dette argumentet er obligatorisk hvis en filterformel er spesifisert. F√łlgende verdier godtas:

Eksempel:

I Basic

    ' T√łmmer alle celler i omr√•det ArkX.A1:J10
    oDoc.ClearAll("ArkX.A1:J10")
    ' Fjerner alle celler i omr√•det ArkX.A1:J10 som har en verdi st√łrre enn 100
    oDoc.ClearAll("ArkX.A1:J10", "=ArkX.A1>100", "CELLE")
    ' Fjerner alle rader i omr√•det ArkX.A1:J10 hvis summen er st√łrre enn 500
    oDoc.ClearAll("ArkX.A1:J10", "=SUM(ArkX.A1:J1)>100", "RAD")
    ' T√łmmer alle kolonner i omr√•det ArkX.A1:J10 hvis summen er st√łrre enn 500
    oDoc.ClearAll("ArkX.A1:J10", "=SUM(ArkX.A1:A10)>100", "KOLONNE")
  
I Python

    myDoc.ClearAll("ArkX.A1:F10")
    myDoc.ClearAll("ArkX.A1:J10", "=ArkX.A1>100", "CELLE")
    myDoc.ClearAll("ArkX.A1:J10", "=SUM(ArkX.A1:J1)>100", "RAD")
    myDoc.ClearAll("ArkX.A1:J10", "=SUM(ArkX.A1:A10)>100", "KOLONNE")
  

ClearFormats

Fjerner formatene og stilene i det gitte området.

En filterformel kan spesifiseres for å bestemme hvilke celler som skal påvirkes.

Syntaks:

svc.ClearFormats(range: str, opt filterformula: str, opt filterscope: str)

Parametre:

område: Området hvis formater og stiler skal slettes, som en streng.

filterformula: En kalkulasjonsformel som skal brukes på det gitte området for å bestemme hvilke celler som vil bli påvirket. Den angitte formelen må returnere Sann eller Usann. Hvis dette argumentet ikke er spesifisert, påvirkes alle cellene i området.

filteromfattning: Bestemmer hvordan filterformel utvides til det gitte omr√•det. Dette argumentet er obligatorisk hvis en filterformel er spesifisert. F√łlgende verdier godtas:

Eksempel:

I Basic

      oDoc.ClearFormats("SheetX.*")
  
I Python

    myDoc.ClearFormats("SheetX.*")
  
tip

Se ClearAll metodedokumentasjonen for eksempler på hvordan du bruker argumentene filterformel og filterscope.


ClearValues

Sletter verdiene og formlene i det gitte området.

En filterformel kan spesifiseres for å bestemme hvilke celler som skal påvirkes.

Syntaks:

svc.ClearValues(range: str, opt filterformula: str, opt filterscope: str)

Parametre:

område: Området hvis verdier og formler skal slettes, som en streng.

filterformula: En kalkulasjonsformel som skal brukes på det gitte området for å bestemme hvilke celler som vil bli påvirket. Den angitte formelen må returnere Sann eller Usann. Hvis dette argumentet ikke er spesifisert, påvirkes alle cellene i området.

filteromfattning: Bestemmer hvordan filterformel utvides til det gitte omr√•det. Dette argumentet er obligatorisk hvis en filterformel er spesifisert. F√łlgende verdier godtas:

Eksempel:

I Basic

      oDoc.ClearValues("SheetX.A1:F10")
  
I Python

    myDoc.ClearValues("SheetX.A1:F10")
  
tip

Se Fjern alt metodedokumentasjonen for eksempler på hvordan du bruker argumentene filterformel og filterscope.


CompactLeft

Sletter kolonnene i et spesifisert område som samsvarer med et filter uttrykt som en Calc-formel. Filteret brukes på hver kolonne for å bestemme om den skal slettes eller ikke.

Den slettede kolonnen kan begrenses til h√łyden p√• det angitte omr√•det eller spennet til h√łyden p√• hele arket, og dermed slette hele kolonner.

Denne metoden returnerer en streng med områdeadressen til det komprimerte området. Hvis alle kolonner slettes, returneres en tom streng.

note

Hvis et celleområde er valgt, vil det å anrope denne metoden ikke påvirke utvalget.


Syntaks:

svc.CompactLeft(range: str, wholecolumn: bool = False, opt filterformula: str): str

Parametre:

område: Området som kolonner vil bli slettet fra, som en streng.

hele kolonnen: Hvis dette alternativet er satt til Sann vil hele kolonnen bli slettet fra arket. Standardverdien er Usann, som betyr at den slettede kolonnen vil v√¶re begrenset til h√łyden p√• det angitte omr√•det.

filterformel: Filteret som skal brukes p√• hver kolonne for √• avgj√łre om den skal slettes eller ikke. Filteret er uttrykt som en Calc-formel som skal brukes p√• den f√łrste kolonnen. N√•r formelen returnerer Sann for en kolonne, vil den kolonnen bli slettet. Standardfilteret sletter alle tomme kolonner.

Anta for eksempel at omr√•det A1:J200 er valgt (h√łyde = 200), s√• standardformelen er =(COUNTBLANK(A1:A200)=200). Dette betyr at hvis alle 200 cellene er tomme i den f√łrste kolonnen (kolonne A), s√• slettes kolonnen. Merk at formelen kun er uttrykt med hensyn til den f√łrste kolonnen. Internt vil CompactLeft-metoden generalisere denne formelen for alle de gjenv√¶rende kolonnene.

note

Calc-funksjoner brukt i filterformula-argumentet m√• uttrykkes med deres engelske navn. Bes√łk Wiki-siden Liste over Calc-funksjoner for en fullstendig liste over Calc-funksjoner p√• engelsk.


Eksempel:

I Basic

    ' Slett alle tomme kolonner i området G1:L10 fra Ark1
    nyttområde = oDoc.CompactLeft("Sheet1.G1:L10")
    ' Eksemplet nedenfor er likt, men hele kolonnen er slettet fra arket
    newrange = oDoc.CompactLeft("Sheet1.G1:L10", Whole Column := Sann)
    ' Sletter alle kolonner der den f√łrste raden er merket med en "X"
    newrange = oDoc.CompactLeft("Ark.G1:L10", FilterFormula := "=(G1=""X"")")
    ' Sletter alle kolonner der summen av verdier i kolonnen er oddetall
    newrange = oDoc.CompactLeft("Ark.G1:L10", FilterFormula := "=(MOD(SUM(G1:G10);2)=1)")
  
I Python

    newrange = myDoc.CompactLeft("Ark.G1:L10")
    newrange = myDoc.CompactLeft("Ark.G1:L10", wholecolumn = Sann)
    newrange = myDoc.CompactLeft("Ark.G1:L10", filterformula = '=(G1="X")')
    newrange = myDoc.CompactLeft("Ark.G1:L10", filterformula = '=(MOD(SUM(G1:G10);2)=1)')
  

CompactUp

Sletter radene i et spesifisert område som samsvarer med et filter uttrykt som en Calc-formel. Filteret brukes på hver rad for å bestemme om den skal slettes eller ikke.

De slettede radene kan begrenses til bredden av det angitte området eller spenne til bredden på hele arket, og dermed slette hele rader.

Denne metoden returnerer en streng med områdeadressen til det komprimerte området. Hvis alle rader slettes, returneres en tom streng.

note

Hvis et celleområde er valgt, vil ikke oppkalling av denne metoden påvirke utvalget.


Syntaks:

svc.CompactUp(range: str, wholerow: bool = False, opt filterformula: str): str

Parametre:

område: Området som rader vil bli slettet fra, som en streng.

hele rad: Hvis dette alternativet er satt til True vil hele raden bli slettet fra arket. Standardverdien er Usann, som betyr at den slettede raden vil være begrenset til bredden på det spesifiserte området.

filterformula: Filteret som skal brukes p√• hver rad for √• bestemme om den skal slettes eller ikke. Filteret uttrykkes som en Calc-formel som skal brukes p√• den f√łrste raden. N√•r formelen returnerer Sann for en rad, vil den raden bli slettet. Standardfilteret sletter alle tomme rader.

Anta for eksempel at omr√•det A1:J200 er valgt (bredde = 10), s√• standardformelen er =(COUNTBLANK(A1:J1)=10). Dette betyr at hvis alle 10 cellene er tomme i den f√łrste raden (rad 1), s√• slettes raden. Merk at formelen kun er uttrykt med hensyn til den f√łrste raden. Internt vil CompactUp-metoden generalisere denne formelen for alle de gjenv√¶rende radene.

note

Calc-funksjonene som brukes i formelen spesifisert i filterformula-argumentet m√• uttrykkes ved √• bruke deres engelske navn. Bes√łk Wiki-siden Liste over Calc-funksjoner for en fullstendig liste over Calc-funksjoner p√• engelsk.


Eksempel:

I Basic

    ' Slett alle tomme rader i området G1:L10 fra Ark1
    newrange = oDoc.CompactUp("Ark1.G1:L10")
    ' Eksemplet nedenfor er likt, men hele raden er slettet fra arket
    newrange = oDoc.CompactUp("Ark1.G1:L10", WholeRow := Sann)
    ' Sletter alle rader der den f√łrste kolonnen er merket med en "X"
    newrange = oDoc.CompactUp("Ark1.G1:L10", FilterFormula := "=(G1=""X"")")
    ' Sletter alle rader der summen av verdier i raden er oddetall
    newrange = oDoc.CompactUp("Ark1.G1:L10", FilterFormula := "=(MOD(SUM(G1:L1);2)=1)")
  
I Python

    newrange = myDoc.CompactUp("Ark1.G1:L10")
    newrange = myDoc.CompactUp("Ark1.G1:L10", wholerow = Sann)
    newrange = myDoc.CompactUp("Ark1.G1:L10", filterformula = '=(G1="X")')
    newrange = myDoc.CompactUp("Ark1.G1:L10", filterformula = '=(MOD(SUM(G1:L1);2)=1)')
  

CopySheet

Kopierer et spesifisert ark f√łr et eksisterende ark eller p√• slutten av listen over ark. Arket som skal kopieres kan v√¶re inne i ethvert √•pent Calc-dokument. Returnerer Sann hvis vellykket.

Syntaks:

svc.CopySheet(sheetname: any, newname: str, [beforesheet: any]): bool

Parametre:

arknavn: Navnet på arket som skal kopieres som en streng eller dets referanse som et objekt.

nyttnavn: Navnet på arket som skal settes inn. Navnet må ikke være i bruk i dokumentet.

foranark: Navnet (strengen) eller indeksen (numerisk, fra 1) p√• arket som det kopierte arket skal settes inn f√łr. Dette argumentet er valgfritt, og standard oppf√łrsel er √• legge til det kopierte arket p√• den siste posisjonen.

Eksempel:

I Basic

F√łlgende eksempel lager en kopi av arket "SheetX" og plasserer det som det siste arket i gjeldende dokument. Navnet p√• det kopierte arket er "SheetY".


    Dim oDoc as Object
    Henter dokumentobjektet til det aktive vinduet
    Set oDoc = CreateScriptService("Calc")
    oDoc.CopySheet("SheetX", "SheetY")
  

Eksemplet nedenfor kopierer "SheetX" fra "FileA.ods" og limer det inn på den siste posisjonen til "FileB.ods" med navnet "SheetY":


      Dim oDocA As Object : Set oDocA = ui.OpenDocument("C:\Documents\FileA.ods", Hidden := True, ReadOnly := True)
      Dim oDocB As Object : Set oDocB = ui.OpenDocument("C:\Documents\FileB.ods")
      oDocB.CopySheet(oDocA.Sheet("SheetX"), "SheetY")
  
I Python

    myDoc.CopySheet("SheetX", "SheetY")
  

    docA = ui.OpenDocument(r"C:\Documents\FileA.ods", hidden = True, readonly = True)
    docB = ui.OpenDocument(r"C:\Documents\FileB.ods")
    docB.CopySheet(docA.Sheet("SheetX"), "SheetY")
  
tip

For å kopiere ark mellom åpne dokumenter, bruk CopySheet. For å kopiere ark fra dokumenter som er lukket, bruk CopySheetFromFile.


CopySheetFromFile

Kopierer et spesifisert ark fra et lukket Calc-dokument og limer det inn f√łr et eksisterende ark eller p√• slutten av listen over ark i filen referert til av et Dokument-objekt.

Hvis filen ikke eksisterer, oppst√•r det en feil. Hvis filen ikke er en gyldig Calc-fil, settes det inn et tomt ark. Hvis kildearket ikke finnes i inndatafilen, settes det inn en feilmelding √łverst p√• det nylig limte arket.

Syntaks:

svc.CopySheetFromFile(filename: str, sheetname: str, newname: str, [beforesheet: any]): bool

Parametre:

filnavn: Identifiserer filen som skal √•pnes. Den m√• f√łlge SF_FileSystem.FileNaming-notasjonen. Filen m√• ikke v√¶re beskyttet med passord.

arknavn: Navnet på arket som skal kopieres som en streng.

newname: Navnet på det kopierte arket som skal settes inn i dokumentet. Navnet må ikke være i bruk i dokumentet.

f√łrark: Navnet (strengen) eller indeksen (numerisk, fra 1) p√• arket som det kopierte arket skal settes inn f√łr. Dette argumentet er valgfritt, og standard oppf√łrsel er √• legge til det kopierte arket p√• den siste posisjonen.

Eksempel:

F√łlgende eksempel kopierer "SheetX" fra "myFile.ods" og limer det inn i dokumentet referert til av "oDoc" som "SheetY" ved den f√łrste posisjonen.

I Basic

    oDoc.CopySheetFromFile("C:\Documents\myFile.ods", "SheetX", "SheetY", 1)
  
I Python

    myDoc.CopySheetFromFile(r"C:\Documents\myFile.ods", "SheetX", "SheetY", 1)
  

CopyToCell

Kopierer et spesifisert kildeområde (verdier, formler og formater) til et målområde eller celle. Metoden reproduserer virkemåten til en Kopier/Lim inn-operasjon fra et område til en enkelt celle.

Den returnerer en streng som representerer det modifiserte celleomr√•det. St√łrrelsen p√• det modifiserte omr√•det bestemmes fullt ut av st√łrrelsen p√• kildeomr√•det.

Kildeomr√•det kan tilh√łre et annet √•pent dokument.

Syntaks:

svc.CopyToCell(sourcerange: any, destinationcell: str): str

Parametre:

kildeomr√•de: Kildeomr√•det som en streng n√•r det tilh√łrer samme dokument eller som en referanse n√•r det tilh√łrer et annet √•pent Calc-dokument.

destinationcell: Destinasjonscellen der det kopierte celleomr√•det skal limes inn, som en streng. Hvis et omr√•de er gitt, vurderes kun dens √łverste venstre celle.

Eksempel:

I Basic

Neste er et eksempel der kilden og destinasjonen er i samme fil:


      oDoc.CopyToCell("SheetX.A1:F10", "SheetY.C5")
  

Eksemplet nedenfor illustrerer hvordan du kopierer et område fra et annet åpent Calc-dokument:


    Dim ui as Variant : ui = CreateScriptService("UI")
    Dim oDocSource As Object, oDocDestination As Object
    '√Öpne kildedokumentet i bakgrunnen (skjult)
    Set oDocSource = ui.OpenDocument("C:\SourceFile.ods", Hidden := True, ReadOnly := True)
    Set oDocDestination = CreateScriptService("Calc")
    oDocDestination.CopyToCell(oDocSource.Range("Sheet1.C2:C4"), "SheetT.A5")
    'Ikke glem å lukke kildedokumentet fordi det ble åpnet som skjult
    oDocSource.CloseDocument()
  
I Python

    docSource = ui.OpenDocument(r"C:\Documents\SourceFile.ods", hidden = True, readonly = True)
    docDestination = CreateScriptService("Calc")
    docDestination.CopyToCell(docSource.Range("Sheet1.C2:C4"), "SheetT.A5")
    docSource.CloseDocument()
  
tip

For √• simulere en Kopier/ Lim inn fra et omr√•de til en enkelt celle, bruk KopierTilCelle. For √• simulere en Kopier/ Lim inn fra et omr√•de til et st√łrre omr√•de (med de samme cellene som blir replikert flere ganger), bruk KopierTilOmr√•de.


CopyToRange

Kopierer nedover og/eller mot h√łyre et spesifisert kildeomr√•de (verdier, formler og formater) til et m√•lomr√•de. Metoden imiterer oppf√łrselen til en Kopier/Lim inn-operasjon fra et kildeomr√•de til et st√łrre m√•lomr√•de.

Metoden returnerer en streng som representerer det modifiserte celleområdet.

Kildeomr√•det kan tilh√łre et annet √•pent dokument.

Syntaks:

svc.CopyToRange(sourcerange: any, destinationrange: str): str

Parametre:

kildeomr√•de: Kildeomr√•det som en streng n√•r det tilh√łrer samme dokument eller som en referanse n√•r det tilh√łrer et annet √•pent Calc-dokument.

destinationrange: Destinasjonen for det kopierte celleområdet, som en streng.

Eksempel:

I Basic

Kopier innenfor samme dokument:


    oDoc.CopyToRange("SheetX.A1:F10", "SheetY.C5:J5")
    ' Returnerer en områdestreng: "$SheetY.$C$5:$J$14"
  

Kopier fra en fil til en annen:


    Dim oDocA As Object : Set oDocA = ui.OpenDocument("C:\Documents\FileA.ods", Hidden := True, ReadOnly := True)
    Dim oDocB As Object : Set oDocB = ui.OpenDocument("C:\Documents\FileB.ods")
    oDocB.CopyToRange(oDocA.Range("SheetX.A1:F10"), "SheetY.C5:J5")
  
I Python

    doc.CopyToRange("SheetX.A1:F10", "SheetY.C5:J5")
  

    docA = ui.OpenDocument(r"C:\Documents\FileA.ods", hidden = True, readonly = True)
    docB = ui.OpenDocument(r"C:\Documents\FileB.ods")
    docB.CopyToRange(docA.Range("SheetX.A1:F10"), "SheetY.C5:J5")
  

CreateChart

Oppretter et nytt diagramobjekt som viser dataene i det angitte området. Det returnerte kartobjektet kan manipuleres ytterligere ved å bruke Diagram-tjenesten.

Syntaks:

svc.CreateChart(chartname: str, sheetname: str, range: str, columnheader: bool = False, rowheader: bool = False): obj

Parametre:

diagramnavn: Det brukerdefinerte navnet på diagrammet som skal opprettes. Navnet må være unikt i samme ark.

arknavn: Navnet på arket der diagrammet skal plasseres.

område: Området som skal brukes som datakilde for diagrammet. Området kan referere til et hvilket som helst ark i Calc-dokumentet.

kolonnehode: N√•r True, brukes den √łverste raden i omr√•det som etiketter for kategoriaksen eller forklaringen (Standard = Usann).

radhoder: Når Sann, brukes kolonnen lengst til venstre i området som etiketter for kategoriaksen eller forklaringen. (Standard = Usann).

Eksempel:

Eksemplene nedenfor i Basic og Python lager et diagram ved å bruke dataene i området "A1:B5" til "Ark1" og plasser diagrammet i "Ark2".

I Basic

    Set oChart = oDoc.CreateChart("MyChart", "Sheet2", "Sheet1.A1:B5", RowHeader := True)
    oChart.ChartType = "Donut"
  
I Python

    chart = doc.CreateChart("MyChart", "Sheet2", "Sheet1.A1:B5", rowheader=True)
    chart.ChartType = "Donut"
  
tip

Se hjelpesiden om ScriptForges Diagramjeneste for å lære mer hvordan du kan ytterligere manipulere diagramobjekter. Det er mulig å endre egenskaper som diagramtype, diagram- og aksetitler og diagramposisjon.


CreatePivotTable

Oppretter en ny pivottabell med egenskapene definert av argumentene som sendes til metoden.

Et navn må angis for pivottabellen. Hvis en pivottabell med samme navn allerede finnes i målarket, vil den bli erstattet uten forvarsel.

Denne metoden returnerer en streng som inneholder området der den nye pivottabellen ble plassert.

Syntaks:

svc.CreatePivotTable(pivottablename: str, sourcerange: str, targetcell: str, datafields: str[0..*], rowfields: str[0..*], columnfields: str[0..*], filterbutton: bool = true, rowtotals: bool = true, columntotals: bool = true): str

Parametre:

pivottablename: Det brukerdefinerte navnet på den nye pivottabellen.

sourcerange: Omr√•det som inneholder r√•dataene, som en streng. Det antas at den f√łrste raden inneholder feltnavnene som brukes av pivottabellen.

m√•lcelle: Den √łverste venstre cellen der den nye pivottabellen skal plasseres. Hvis et omr√•de er spesifisert, vurderes bare dens √łverste venstre celle.

datafelt: Det kan enten v√¶re en enkelt streng eller en matrise som inneholder strenger som definerer feltnavn og funksjoner som skal brukes. N√•r en matrise er spesifisert, m√• den f√łlge syntaksen Array("FieldName[;Function]", ...).

De tillatte funksjonene er: Sum, Count, Gjennomsnitt, Maks, Min, Produkt, CountNums, StDev, StDevP, Var, VarP og Median. Funksjonsnavn må oppgis på engelsk. Når alle verdier er numeriske, er Sum standardfunksjonen, ellers er standardfunksjonen Count.

rowfields: En enkelt streng eller en matrise med feltnavnene som skal brukes som pivottabellradene.

kolonnefelt: En enkelt streng eller en matrise med feltnavnene som skal brukes som pivottabellkolonner.

filterknapp: Bestemmer om en filterknapp skal vises over pivottabellen (Standard = Sann).

rowtotals: Spesifiserer om en egen kolonne for radtotaler vil bli lagt til i pivottabellen (Standard = Sann).

rowtotals: Spesifiserer om en egen kolonne for radtotaler vil bli lagt til i pivottabellen (Standard = Sann).

Eksempel:

I Basic

    Dim vData As Variant, oDoc As Object, ui As Object, sTable As String, sPivot As String
    Set ui = CreateScriptService("UI")
    Set oDoc = ui.CreateDocument("Calc")
    vData = Matrise(Array("Vare", "Tilstand", "Lag", "2002", "2003", "2004"), _
        Matrise("B√łker", "Michigan", "Jean", 14788, 30222, 23490), _
        Matrise("Candy", "Michigan", "Jean", 26388, 15641, 32849), _
        Matrise("Pens", "Michigan", "Jean", 16569, 32675, 25396), _
        Matrise("B√łker", "Michigan", "Volker", 21961, 21242, 29009), _
        Matrise("Candy", "Michigan", "Volker", 26142, 22407, 32841))
    sTable = oDoc.SetArray("A1", vData)
    sPivot = oDoc.CreatePivotTable("PT1", sTable, "H1", _
        Matrise("2002", "2003;count", "2004;average"), _ ' Three data fields
        "Gjenstand", _ ' A single row field
        Matrise("State", "Team"), False) ' Two column fields
  
I Python

    ui = CreateScriptService("UI")
    doc = ui.CreateDocument("Calc")
    vData = [["Gjenstand", "Stat", "Team", "2002", "2003", "2004"],
             ["B√łker", "Michigan", "Jean", 14788, 30222, 23490],
             ["Candy" , "Michigan", "Jean", 26388, 15641, 32849],
             ["Penner", "Michigan", "Jean", 16569, 32675, 25396)],
             ["B√łker", "Michigan", "Volker", 21961, 21242, 29009],
             ["Candy" , "Michigan", "Volker", 26142, 22407, 32841]]
    sTable = doc.SetArray("A1", vData)
    sPivot = doc.CreatePivotTable("PT1", sTable, "H1",
                                  ["2002", "2003;count", "2004;gjennomsnitt"],
                                  "Gjenstand",
                                  ["Stat", "Team"], Usann)
  
tip

For å lære mer om pivottabeller i LibreOffice Calc, les pivottabell hjelpesiden.


DAvg, DCount, DMax, DMin and DSum

Bruk funksjonene Average, Count, Max, Min og Sum, henholdsvis på alle cellene som inneholder numeriske verdier i et gitt område, unntatt verdier fra filtrerte og skjulte rader og skjulte kolonner, det samme som for statuslinjefunksjonene.

Syntaks:

svc.DAvg(range: str): float

svc.DCount(range: str): float

svc.DMax(range: str): float

svc.DMin(range: str): float

svc.DSum(range: str): float

Parametre:

område: Området som funksjonen skal brukes på, som en streng.

Eksempel:

Eksemplet nedenfor bruker Sum-funksjonen på området "A1:A1000" for det valgte arket:

I Basic

      result = oDoc.DSum("~.A1:A1000")
  
I Python

    result = myDoc.DSum("~.A1:A1000")
  
note

Celler i det gitte området som inneholder tekst vil bli ignorert av alle disse funksjonene. For eksempel vil DCount-metoden ikke telle celler med tekst, kun numeriske celler.


ExportRangeToFile

Eksporterer det angitte området som et bilde eller PDF-fil.

Denne metoden returnerer Sann hvis målfilen ble lagret.

note

Skjulte rader eller kolonner i det angitte området eksporteres ikke til målfilen.


Syntaks:

svc.ExportRangeToFile(range: str, filename: str, imagetype: str = "pdf", overwrite: bool = False): bool

Parametre:

område: Et arknavn eller et celleområde som skal eksporteres, som en streng.

filnavn: Navnet p√• filen som skal lagres. Den m√• f√łlge SF_FileSystem.FileNaming-notasjonen.

imagetype: Identifiserer målfiltypen. Mulige verdier er "jpeg", "pdf" (standard) og "png".

overskriv: Når satt til True, kan målfilen bli overskrevet (Standard = Usann).

Eksempel:

I Basic

    ' Eksporterer hele arket som en PDF-fil
    oDoc.ExportRangeToFile("SheetX", "C:\Temp\image.pdf")
    ' Eksporterer området som en PNG-fil og overskriver målfilen hvis den eksisterer
    oDoc.ExportRangeToFile("SheetX.A1:D10", "C:\Temp\image.png", "png", Overwrite := True)
  
I Python

    doc.ExportRangeToFile("SheetX", r"C:\Temp\image.pdf")
    doc.ExportRangeToFile("SheetX.A1:D10", r"C:\Temp\image.png", "png", overwrite = True)
  

Forms

Avhengig av parametrene som er gitt, vil denne metoden returnere:

Syntaks:

svc.Forms(sheetname: str): str[0..*]

svc.Forms(sheetname: str, form: str = ''): svc

svc.Forms(sheetname: str, form: int): svc

Parametre:

arknavn: Navnet på arket, som en streng, som skjemaet vil bli hentet fra.

skjema: Navnet eller indeksen som tilsvarer et skjema som er lagret i det angitte arket. Hvis dette argumentet er fraværende, vil metoden returnere en liste med navnene på alle tilgjengelige skjemaer i arket.

Eksempel:

I de f√łlgende eksemplene f√•r den f√łrste linjen navnene p√• alle skjemaer som er lagret i "Ark1", og den andre linjen henter Skjema-objektet til skjemaet kalt "Skjema_A" som er lagret i "Ark1".

I Basic

    Set FormNames = oDoc.Forms("Sheet1")
    Set FormA = oDoc.Forms("Sheet1", "Form_A")
  
I Python

    form_names = doc.Forms("Sheet1")
    form_A = doc.Forms("Sheet1", "Form_A")
  

GetColumnName

Konverterer et kolonnenummer mellom 1 og 1024 til dens tilsvarende bokstav (kolonne 'A', 'B', ..., 'AMJ'). Hvis det gitte kolonnenummeret er utenfor det tillatte området, returneres en streng med null lengde.

Syntaks:

svc.GetColumnName(columnnumber: int): str

Parametre:

kolonnenummer: Kolonnenummeret som en heltallsverdi i intervallet 1 ... 1024.

Eksempel:

I Basic

Viser en meldingsboks med navnet på den tredje kolonnen, som som standard er "C".


    MsgBox oDoc.GetColumnName(3)
  
I Python

    bas = CreateScriptService("Basic")
    bas.MsgBox(myDoc.GetColumnName(3))
  
note

Maksimalt antall kolonner tillatt på et Calc-ark er 1024.


GetFormula

Få formelen(e) lagret i det gitte celleområdet som en enkelt streng, en 1D eller en 2D rekke strenger.

note

Navnene p√• Calc-funksjoner som brukes i de returnerte formlene er uttrykt p√• engelsk. Bes√łk Wiki-siden Liste over Calc-funksjoner for en fullstendig liste over Calc-funksjoner p√• engelsk.


Syntaks:

svc.GetFormula(range: str): any

Parametre:

område: Området hvor formlene skal hentes fra, som en streng.

Eksempel:

I Basic

F√łlgende eksempel returnerer en 3 x 2 matrise med formlene i omr√•det "A1:B3" (3 rader x 2 kolonner):


    arrFormula = oDoc.GetFormula("~.A1:B3")
  
I Python

    arrFormula = myDoc.GetFormula("~.A1:B3")
  

GetValue

Få verdien(e) lagret i det gitte celleområdet som en enkelt verdi, en 1D-matrise eller en 2D-matrise. Alle verdier er enten doble eller strenger.

Syntaks:

svc.GetValue(range: str): any

Parametre:

område: Området hvor du skal hente verdiene fra, som en streng.

Eksempel:

I Basic

      arrValues = oDoc.GetValue("~.B1:C100")
  
I Python

    arrValues = myDoc.GetValue("~.B1:C100")
  
note

Hvis en celle inneholder en dato, vil tallet som tilsvarer den datoen bli returnert. For å konvertere numeriske verdier til datoer i grunnleggende skript, bruk den grunnleggende CDate innebygde funksjon. I Python-skript bruker du CDate-funksjonen fra Basic-funksjonen > tjeneste.


ImportFromCSVFile

Importerer innholdet i en CSV-formatert tekstfil og plasserer den på en gitt destinasjonscelle.

Destinasjonsomr√•det t√łmmes for alt innhold og formater f√łr innholdet i CSV-filen settes inn. St√łrrelsen p√• det modifiserte omr√•det bestemmes fullt ut av innholdet i inndatafilen.

Metoden returnerer en streng som representerer det modifiserte celleområdet.

Syntaks:

svc.ImportFromCSVFile(filename: str, destinationcell: str, [filteroptions: str]): str

Parametre:

filnavn: Identifiserer filen som skal √•pnes. Den m√• f√łlge SF_FileSystem.FileNaming-notasjonen.

destinationcell: Destinasjonscellen for √• sette inn importerte data, som en streng. Hvis det i stedet angis et omr√•de, vurderes bare dens √łverste venstre celle.

filteralternativer: Argumentene for CSV-inndatafilteret. Standardfilteret gj√łr f√łlgende forutsetninger:

Eksempel:

I Basic

    oDoc.ImportFromCSVFile("C:\Temp\myCSVFile.csv", "SheetY.C5")
  
I Python

    myDoc.ImportFromCSVFile(r"C:\Temp\myCSVFile.csv", "SheetY.C5")
  
tip

For å lære mer om CSV-filteralternativene, se hjelpesiden for CSV-filteralternativer.


ImportFromDatabase

Importerer innholdet i en databasetabell, sp√łrring eller resultatsett, dvs. resultatet av en SELECT SQL-kommando, setter den inn i en destinasjonscelle.

Destinasjonsomr√•det t√łmmes for alt innhold og formater f√łr det importerte innholdet settes inn. St√łrrelsen p√• det modifiserte omr√•det bestemmes fullt ut av innholdet i tabellen eller sp√łrringen.

Metoden returnerer Sann når importen var vellykket.

Syntaks:

svc.ImportFromDatabase(filename: str = "", registrationname: str = "", destinationcell: str = "", sqlcommand: str = "", directsql: bool): bool

Parametre:

filnavn: Identifiserer filen som skal √•pnes. Den m√• f√łlge SF_FileSystem.FileNaming-notasjonen.

registreringsnavn: Navnet som skal brukes for å finne databasen i databaseregisteret. Dette argumentet ignoreres hvis et filnavn er oppgitt.

destinationcell: Destinasjonen for de importerte dataene, som en streng. Hvis et omr√•de er gitt, vurderes kun dens √łverste venstre celle.

sqlcommand: Et tabell- eller sp√łrringsnavn (uten anf√łrselstegn eller hakeparenteser) eller en SELECT SQL-setning der tabell- og feltnavn kan v√¶re omgitt av hakeparenteser eller anf√łrselstegn for √• forbedre lesbarheten.

directsql: N√•r True, sendes SQL-kommandoen til databasemotoren uten forh√•ndsanalyse. Standard er Usann. Argumentet ignoreres for tabeller. For sp√łrringer er det valgte alternativet det som ble angitt da sp√łrringen ble definert.

Eksempel:

I Basic

    oDoc.ImportFromDatabase("C:\Temp\myDbFile.odb", , "SheetY.C5", "SELECT * FROM [Employees] ORDER BY [LastName]")
  
I Python

    myDoc.ImportFromDatabase(r"C:\Temp\myDbFile.odb", , "SheetY.C5", "SELECT * FROM [Employees] ORDER BY [LastName]")
  

InsertSheet

Setter inn et nytt tomt ark f√łr et eksisterende ark eller p√• slutten av listen over ark.

Syntaks:

svc.InsertSheet(sheetname: str, [beforesheet: any]): bool

Parametre:

arknavn: Navnet på det nye arket.

beforesheet: Navnet (strengen) eller indeksen (numerisk, fra 1) til arket som det nye arket skal settes inn f√łr. Dette argumentet er valgfritt, og standard oppf√łrsel er √• sette inn arket p√• den siste posisjonen.

Eksempel:

F√łlgende eksempel setter inn et nytt tomt ark kalt "ArkX" og plasserer det f√łr "ArkY":

I Basic

    oDoc.InsertSheet("SheetX", "SheetY")
  
I Python

    myDoc.InsertSheet("SheetX", "SheetY")
  

MoveRange

Flytter et spesifisert kildeomr√•de til et m√•lomr√•de med celler. Metoden returnerer en streng som representerer det modifiserte celleomr√•det. Dimensjonen til det modifiserte omr√•det er fullt ut bestemt av st√łrrelsen p√• kildeomr√•det.

Syntaks:

svc.MoveRange(source: str, destination: str): str

Parametre:

kilde: Kildeområdet for celler, som en streng.

destinasjon: Destinasjonscellen, som en streng. Hvis et omr√•de er gitt, anses dens √łverste venstre celle som destinasjonen.

Eksempel:

I Basic

    oDoc.MoveRange("SheetX.A1:F10", "SheetY.C5")
  
I Python

    myDoc.MoveRange("SheetX.A1:F10", "SheetY.C5")
  

MoveSheet

Flytter et eksisterende ark og plasserer det foran et spesifisert ark eller på slutten av listen over ark.

Syntaks:

svc.MoveSheet(sheetname: str, [beforesheet: any]): bool

Parametre:

arknavn: Navnet på arket som skal flyttes. Arket må eksistere eller et unntak oppstår.

beforesheet: Navnet (strengen) eller indeksen (numerisk, fra 1) til arket som det originale arket skal plasseres foran. Dette argumentet er valgfritt, og standard oppf√łrsel er √• flytte arket til siste posisjon.

Eksempel:

Eksemplet nedenfor flytter det eksisterende arket "SheetS" og plasserer det f√łr "ShettY":

I Basic

    oDoc.MoveSheet("SheetX", "SheetY")
  
I Python

    myDoc.MoveSheet("SheetX", "SheetY")
  

Offset

Returnerer et nytt omr√•de (som en streng) forskj√łvet med et visst antall rader og kolonner fra et gitt omr√•de.

Denne metoden har samme oppf√łrsel som den homonyme Calcs Offset-funksjon.

Syntaks:

svc.Offset(reference: str, rows: int = 0, columns: int = 0, [height: int], [width: int]): str

Parametre:

referanse: Omr√•det, som en streng, som metoden vil bruke som referanse for √• utf√łre offset-operasjonen.

rader: Antall rader som startområdet forskyves med oppover (negativ verdi) eller nedover (positiv verdi). Bruk 0 (standard) for å bli i samme rad.

kolonner: Antall kolonner som startomr√•det forskyves med til venstre (negativ verdi) eller til h√łyre (positiv verdi). Bruk 0 (standard) for √• bli i samme kolonne.

h√łyde: Den vertikale h√łyden for et omr√•de som starter ved den nye rekkeviddeposisjonen. Utelat dette argumentet n√•r ingen vertikal endring av st√łrrelse er n√łdvendig.

bredde: Den horisontale bredden for et omr√•de som starter ved den nye rekkeviddeposisjonen. Utelat dette argumentet n√•r ingen horisontal st√łrrelseendring er n√łdvendig.

Argumenter rader og kolonner m√• ikke f√łre til null eller negativ startrad eller kolonne.

Argumenter h√łyde og bredde m√• ikke f√łre til null eller negativt antall rader eller kolonner.

Eksempel:

I Basic

    oDoc.Offset("A1", 2, 2)
    'SheetX.$C$3 (A1 flyttet med to rader og to kolonner nedover)
    oDoc.Offset("A1", 2, 2, 5, 6)
    'SheetX.$C$3:$H$7 (A1 forskj√łvet med to rader og kolonner med en bredde p√• 5 rader og 6 kolonner)
  
I Python

    myDoc.Offset("A1", 2, 2)
    myDoc.Offset("A1", 2, 2, 5, 6)
  

OpenRangeSelector

Åpner en ikke-modal dialogboks som kan brukes til å velge et område i dokumentet og returnerer en streng som inneholder det valgte området.

note

Denne metoden √•pner den samme dialogboksen som brukes av LibreOffice n√•r Minsk-knappen trykkes. For eksempel har Verkt√ły - M√•ls√łk-dialogen en Minsk-knapp til h√łyre for Formelcelle-feltet.


Denne metoden endrer ikke gjeldende valg.

Syntaks:

svc.OpenRangeSelector(opt title: str, opt selection: str, singlecell: bool = False, closeafterselect: bool = True): str

Parametre:

tittel: Tittelen på dialogboksen, som en streng.

utvalg: Et valgfritt omr√•de som f√łrst velges n√•r dialogboksen vises.

enkeltcelle: Når Sann (standard) er kun enkeltcellevalg tillatt. Når Usann er omrxdevalg tillatt.

stengettervalg: N√•r Sann (standard) lukkes dialogen umiddelbart etter at valget er gjort. N√•r Usann kan brukeren endre valget s√• mange ganger som n√łdvendig og deretter lukke dialogen manuelt.

Eksempel:

I Basic

    Dim sRange as String
    sRange = oDoc.OpenRangeSelector(Title := "Select a range")
  
I Python

    sRange = myDoc.OpenRangeSelector(title = "Select a range")
  

Printf

Returnerer inndatastrengen etter å ha erstattet dens token-tegn med verdiene deres i et gitt område.

Denne metoden endrer ikke gjeldende valg.

tip

Denne metoden kan brukes til raskt √• trekke ut bestemte deler av et omr√•denavn, for eksempel arknavnet eller f√łrste cellekolonne og rad, og bruke dem til √• lage en ny omr√•deadresse.


Syntaks:

svc.Printf(inputstr: str, range: str, tokencharacter: str = "%"): str

Parametre:

inputstr: Strengen som inneholder tokner som vil bli erstattet av de tilsvarende verdiene i området.

range: Et RangeName som verdier vil bli trukket ut fra. Hvis det inneholder et arknavn, må arket eksistere.

tokencharacter: Tegn som brukes til √• identifisere tokner. Som standard er "%" symboltegnet. F√łlgende tokner godtas:

Eksempel:

I Basic

Eksemplet nedenfor trekker ut hvert element i RangeName definert i sRange og bruker dem til å skrive en melding.


    Dim sRange as String, sInputStr as String
    sRange = "Sheet1.A1:E10"
    sInputStr = "Sheet name: %S" & Chr(10) & _
                "First row: %R1" & Chr(10) & _
                "First column %C1" & Chr(10) & _
                "Last row %R2" & Chr(10) & _
                "Last column %C2"
    MsgBox oDoc.Printf(sInputStr, sRange)
  

Metoden Printf kan kombineres med SetFormula for å lage formler over flere celler. Tenk for eksempel på en tabell med numeriske verdier i området "A1:E10" som formler skal lages fra for å summere verdiene i hver rad og plasser resultatene i området "F1:F10":


    Dim sFormula as String, sRange as String
    sRange = "A1:E10"
    ' Legg merke til bruken av tegnet "$".
    sFormula = "=SUM($%C1%R1:$%C2%R1)"
    oDoc.SetFormula("F1:F10", oDoc.Printf(sFormula, sRange))
  
I Python

    sRange = "Sheet1.A1:E10"
    sInputStr = "Sheet name: %S\n" \
                "First row: %R1\n" \
                "First column %C1\n" \
                "Last row %R2\n" \
                "Last column %C2"
    bas = CreateScriptService("Basic")
    bas.MsgBox(myDoc.Printf(sInputStr, sRange))
  

    sRange = "A1:E10
    sFormula = "=SUM($%C1%R1:$%C2%R1)"
    myDoc.SetFormula("F1:F10", myDoc.Printf(sFormula, sRange))
  

PrintOut

Denne metoden sender innholdet i det gitte arket til standardskriveren eller til skriveren som er definert av SetPrinter-metoden til Dokument-tjenesten.

Returnerer Sann hvis arket ble skrevet ut.

Syntaks:

svc.PrintOut(opt sheetname: str, pages: str = "", copies: num = 1): bool

Parametre:

arknavn: Arket som skal skrives ut, standard er det aktive arket.

sider: Sidene som skal skrives ut som en streng, som i brukergrensesnittet. Eksempel: "1-4;10;15-18". Standard er alle sider.

kopier: Antall kopier. Standard er 1.

Eksempel:

I Basic

    If oDoc.PrintOut("SheetX", "1-4;10;15-18", Copies := 2) Then
        ' ...
    End If
  
I Python

    if doc.PrintOut('SheetX', copies=3, pages='45-88'):
        # ...
  

RemoveDuplicates

Fjerner dupliserte rader fra et spesifisert omr√•de. Sammenligningen for √• avgj√łre om en gitt rad er en duplikat gj√łres basert p√• et undersett av kolonner i omr√•det.

Denne metoden returnerer en streng som inneholder det resulterende området.

note

Fjerning av dupliserte rader gj√łres fra den f√łrste raden i omr√•det som beveger seg nedover, noe som betyr at hvis to eller flere rader er duplikater, s√• beholdes bare den f√łrste.


Syntaks:

svc.RemoveDuplicates(range: str, opt columns: int[0..*], header: bool = False, casesensitive: bool = False, mode: str = "COMPACT"): str

Parametre:

område: Området som duplikater vil bli fjernet fra, som en streng.

kolonner: En matrise som inneholder kolonnenumre som indikerer hvilke kolonner som vil bli vurdert for √• avgj√łre om en rad er en duplikat eller ikke. Hvis dette argumentet er tomt, brukes bare den f√łrste kolonnen. Elementer i denne matrisen m√• v√¶re i intervallet mellom 1 og omr√•debredden.

overskrift: Angir om den f√łrste raden er en overskriftsrad (Standard = Usann).

forbokstavssensitiv: Angir om strengsammenligninger skiller mellom store og små bokstaver (Standard = Usann).

modus: Angir hva som skal gj√łres med dupliserte rader. Hvis modus = "CLEAR" s√• fjernes duplikater ganske enkelt fra arket og lar cellene st√• tomme. Hvis modus = "COMPACT", fjernes duplikater og tomme rader komprimeres (Standard = "COMPACT").

Eksempel:

I Basic

    ' Fjerner dupliserte rader der verdiene i kolonne A er dupliserte
    ' Merk at alle valgfrie argumenter bruker standardverdien
    oDoc.RemoveDuplicates("A1:B10")
    ' Fjerner dupliserte rader med tanke p√• at den f√łrste raden inneholder overskrifter
    ' Kolonne A og B brukes til å bestemme om en rad er en duplikat
    ' Celler som inneholder dupliserte verdier er tomme
    oDoc.RemoveDuplicates("A1:D10", columns := Array(1, 2), header := True, mode := "CLEAR")
  
I Python

    myDoc.RemoveDuplicates("A1:B10")
    myDoc.RemoveDuplicates("A1:D10", columns = (1, 2), header = True, mode = "CLEAR")
  

RemoveSheet

Fjerner et eksisterende ark fra dokumentet.

Syntaks:

svc.RemoveSheet(sheetname: str): bool

Parametre:

arknavn: Navnet på arket som skal fjernes.

Eksempel:

I Basic

    oDoc.RemoveSheet("SheetY")
  
I Python

    myDoc.RemoveSheet("SheetY")
  

RenameSheet

Gi nytt navn til det gitte arket og returnerer Sann hvis vellykket.

Syntaks:

svc.RenameSheet(sheetname: str, newname: str): bool

Parametre:

arknavn: Navnet på arket som skal gis nytt navn.

nyttnavn: det nye navnet på arket. Det må ikke eksistere ennå.

Eksempel:

Dette eksemplet gir nytt navn til det aktive arket til "Ark":

I Basic

    oDoc.RenameSheet("~", "SheetY")
  
I Python

    mydoc.RenameSheet("~", "SheetY")
  

SetArray

Lagrer den gitte verdien fra en spesifisert m√•lcelle. Det oppdaterte omr√•det utvider seg selv fra m√•lcellen eller fra √łverste venstre hj√łrne av det gitte omr√•det for √• im√łtekomme st√łrrelsen p√• verdi-argumentet. Vektorer utvides alltid vertikalt.

Metoden returnerer en streng som representerer det modifiserte området som et celleområde.

Syntaks:

svc.SetArray(targetcell: str, value: any): str

Parametre:

målcelle: Cellen eller et område som en streng hvorfra du skal begynne for å lagre den gitte verdien.

verdi: En skalar, en vektor eller en matrise (i Python, en- eller todimensjonale lister og tupler) med de nye verdiene som skal lagres fra m√•lcellen eller fra √łverste venstre hj√łrne av omr√•de hvis m√•lcelle er et omr√•de. De nye verdiene m√• v√¶re strenger, numeriske verdier eller datoer. Andre typer vil f√łre til at de tilsvarende cellene t√łmmes.

Eksempel:

I Basic

F√łlgende eksempel bruker den innebygde DimArray-funksjonen for √• lage en matrise og deretter lagre den i celle "A1":


    Dim arrData as Variant
    arrData = DimArray(2, 1)
    arrData(0, 0) = 1 : arrData(1, 0) = 2 : arrData(2, 0) = 3
    arrData(0, 1) = "One" : arrData(1, 1) = "Two" : arrData(2, 1) = "Three"
    oDoc.SetArray("Sheet1.A1", arrData)
  

Dette eksemplet bruker RangeInit-metoden til ScriptForge Array-tjenesten for å lage en matrise med verdier som er deretter lagret fra celle "A1" og nedover.


    'Fyll f√łrste kolonne med verdier fra 1 til 1000
    oDoc.SetArray("Sheet1.A1", SF_Array.RangeInit(1, 1000))
  
I Python

    arrData = ((1, "One"), (2, "Two"), (3, "Three"))
    myDoc.SetArray("Sheet1.A1", arrData)
  

    myDoc.SetArray("Sheet1.A1", tuple(i + 1 for i in range(1000)))
  
tip

For å dumpe hele innholdet i en matrise i et ark, bruk SetArray. For å dumpe innholdet i en matrise bare innenfor grensene til det målrettede celleområdet, bruk SetValue.


SetCellStyle

Bruker den angitte cellestilen p√• det gitte m√•lomr√•det. Hele utvalget oppdateres og resten av arket forblir ur√łrt. Hvis cellestilen ikke eksisterer, oppst√•r det en feil.

Metoden returnerer en streng som representerer det modifiserte området som et celleområde.

Syntaks:

svc.SetCellStyle(targetrange: str, style: str, opt filterformula: str, opt filterscope: str): str

Parametre:

målområde: Området som stilen skal brukes på, som en streng.

stil: Navnet på cellestilen som skal brukes.

filterformula: En kalkulasjonsformel som skal brukes på det gitte området for å bestemme hvilke celler som vil bli påvirket. Den angitte formelen må returnere Sann eller Usann. Hvis dette argumentet ikke er spesifisert, påvirkes alle cellene i området.

filteromfattning: Bestemmer hvordan filterformel utvides til det gitte omr√•det. Dette argumentet er obligatorisk hvis en filterformel er spesifisert. F√łlgende verdier godtas:

Eksempel:

I Basic

    oDoc.SetCellStyle("A1:J1", "Heading 1")
    oDoc.SetCellStyle("A2:J100", "Neutral")
  
I Python

    myDoc.SetCellStyle("A1:J1", "Heading 1")
    myDoc.SetCellStyle("A2:J100", "Neutral")
  
tip

Se ClearAll metodedokumentasjonen for eksempler på hvordan du bruker argumentene filterformel og filterscope.


SetFormula

Setter inn den gitte (matrisen av) formel(er) i det angitte omr√•det. St√łrrelsen p√• det modifiserte omr√•det er lik st√łrrelsen p√• omr√•det.

Metoden returnerer en streng som representerer det modifiserte området som et celleområde.

Syntaks:

svc.SetFormula(targetrange: str, formula: any): str

Parametre:

målområde: Området for å sette inn formlene, som en streng.

formel: En streng, en vektor eller en rekke strenger med de nye formlene for hver celle i målområdet.

Hele området oppdateres og resten av arket forblir uendret.

Hvis den gitte formelen er en streng, limes den unike formelen langs hele området med justering av de relative referansene.

Hvis st√łrrelsen p√• formel er mindre enn st√łrrelsen p√• m√•lomr√•de, t√łmmes de gjenv√¶rende cellene.

Hvis st√łrrelsen p√• formel er st√łrre enn st√łrrelsen p√• targetrange, kopieres formlene bare delvis til den fyller st√łrrelsen p√• targetrange.

Vektorer utvides alltid vertikalt, bortsett fra hvis m√•lomr√•de har en h√łyde p√• n√łyaktig 1 rad.

note

Calc-funksjoner som brukes i formel-argumentet m√• uttrykkes med deres engelske navn. Bes√łk Wiki-siden Liste over Calc-funksjoner for en fullstendig liste over Calc-funksjoner p√• engelsk.


Eksempel:

I Basic

    oDoc.SetFormula("A1", "=A2")
    'Horisontal vektor, delvis tom
    oDoc.SetFormula("A1:F1", Array("=A2", "=B2", "=C2+10"))
    'D2 inneholder formelen "=H2"
    oDoc.SetFormula("A1:D2", "=E1")
  
I Python

    myDoc.SetFormula("A1", "=A2")
    myDoc.SetFormula("A1:F1", ("=A2", "=B2", "=C2+10"))
    myDoc.SetFormula("A1:D2", "=E1")
  

SetValue

Lagrer den gitte verdien i det angitte omr√•det. St√łrrelsen p√• det modifiserte omr√•det er lik st√łrrelsen p√• m√•lomr√•det.

Metoden returnerer en streng som representerer det modifiserte området som et celleområde.

Syntaks:

svc.SetValue(targetrange: str, value: any): str

Parametre:

målområde: Området hvor den gitte verdien skal lagres, som en streng.

målområde: Området hvor den gitte verdien skal lagres, som en streng.

Hele omr√•det oppdateres og resten av arket forblir uendret. Hvis st√łrrelsen p√• verdi er mindre enn st√łrrelsen p√• m√•lomr√•de, vil de gjenv√¶rende cellene bli t√łmt.

Hvis st√łrrelsen p√• verdi er st√łrre enn st√łrrelsen p√• m√•l, blir verdi bare delvis kopiert til den fyller st√łrrelsen p√• m√•lgruppe .

Vektorer utvides vertikalt, bortsett fra hvis m√•lomr√•de har en h√łyde p√• n√łyaktig 1 rad.

Eksempel:

I Basic

    oDoc.SetValue("A1", 2)
    'Under verdimatrisen er mindre enn m√•lomr√•det (resterende celler t√łmmes)
    oDoc.SetValue("A1:F1", Array(1, 2, 3))
    'Under Verdi og 'M√•lOmr√•de har samme st√łrrelse
    oDoc.SetValue("A1:D2", SF_Array.AppendRow(Array(1, 2, 3, 4), Array(5, 6, 7, 8)))
  

Hvis du vil fylle en enkelt rad med verdier, kan du bruke funksjonen Forskyvning. I eksemplet nedenfor b√łr du vurdere at arrData er en endimensjonal matrise:


    Dim firstCell As String : firstCell = "A1"
    Dim lenArray As Integer : lenArray = UBound(arrData) - LBound(arrData) + 1
    Dim newRange As String : newRange = oDoc.Offset(firstCell, width = lenArray)
    oDoc.SetValue(newRange, arrData)
  
I Python

    myDoc.SetValue("A1", 2)
    myDoc.SetValue("A1:F1", (1, 2, 3))
    myDoc.SetValue("A1:D2", ((1, 2, 3, 4), (5, 6, 7, 8)))
  

    firstCell = "A1"
    newRange = doc.Offset(firstCell, width = len(arrData))
    doc.SetValue(newRange, arrData)
  

ShiftDown

Flytter et gitt område med celler nedover ved å sette inn tomme rader. Gjeldende valg påvirkes ikke.

Avhengig av verdien av helerad-argumentet kan de innsatte radene enten spenne over bredden til det angitte området eller spenne over alle kolonnene i raden.

Denne metoden returnerer en streng som representerer den nye plasseringen av det opprinnelige området.

note

Hvis det forskyvede området overskrider arkkantene, skjer ingenting.


Syntaks:

svc.ShiftDown(range: str, wholerow: bool = False, opt rows: int): str

Parametre:

område: Området over hvilke rader skal settes inn, som en streng.

hele rad: Hvis satt til Usann (standard), vil bredden på de innsatte radene være den samme som bredden på det angitte området. Ellers vil den innsatte raden spenne over alle kolonnene i arket.

rader: Antall rader som skal settes inn. Standardverdien er h√łyden p√• det opprinnelige omr√•det. Antall rader m√• v√¶re et positivt tall.

Eksempel:

I Basic

    ' Flytter området "A3:D3" ned en rad; påvirker bare kolonnene A til D
    oDoc.ShiftDown("A3:D3")
    ' Den innsatte raden spenner over alle kolonnene i arket
    oDoc.ShiftDown("A3:D3", WholeRow := True)
    ' Flytter området "A3:D3" ned med fem rader
    oDoc.ShiftDown("A3:D3", Rows := 5)
    ' Flytter området "A3:D10" ned med to rader og viser den nye plasseringen til det opprinnelige området
    Dim sNewRange as String
    sNewRange = oDoc.ShiftDown("A3:D10", Rows := 2)
    MsgBox sNewRange   ' $Sheet1.$A$5:$D$12
  
I Python

    myDoc.ShiftDown("A3:D3")
    myDoc.ShiftDown("A3:D3", wholerow = True)
    myDoc.ShiftDown("A3:D3", rows = 5)
    sNewRange = myDoc.ShiftDown("A3:D10", rows = 2)
    bas = CreateScriptService("Basic")
    bas.MsgBox(sNewRange)
  

ShiftLeft

Sletter kolonnene lengst til venstre i et gitt omr√•de og flytter til venstre alle cellene til h√łyre for det ber√łrte omr√•det. Gjeldende valg p√•virkes ikke.

Avhengig av verdien til wholecolumn-argumentet kan de slettede kolonnene enten spenne over h√łyden til det angitte omr√•det eller spenne over alle rader i kolonnen.

Denne metoden returnerer en streng som representerer plasseringen av den gjenværende delen av startområdet. Hvis alle cellene i det opprinnelige området er slettet, returneres en tom streng.

Syntaks:

svc.ShiftLeft(range: str, wholecolumn: bool = False, opt columns: int): str

Parametre:

område: Området som celler vil bli slettet fra, som en streng.

helkolonne: Hvis satt til Usann (standard), vil h√łyden p√• de slettede kolonnene v√¶re den samme som h√łyden p√• det angitte omr√•det. Ellers vil de slettede kolonnene spenne over alle rader i arket.

kolonner: Antall kolonner som skal slettes fra det angitte området. Standardverdien er bredden på det opprinnelige området, som også er maksimumsverdien for dette argumentet.

Eksempel:

I Basic

    ' Sletter omr√•det "B3:B6"; flytter venstre alle celler til h√łyre
    oDoc.ShiftLeft("B3:B6")
    ' Sletter den f√łrste kolonnen i omr√•det "A3:D6"
    oDoc.ShiftLeft("A3:D6", Columns := 1)
    ' De slettede kolonnene (A til D) dekker alle rader i arket
    oDoc.ShiftLeft("A3:D6", WholeColumn := True)
  
I Python

    myDoc.ShiftLeft("B3:B6")
    myDoc.ShiftLeft("A3:D6", Columns = 1)
    myDoc.ShiftLeft("A3:D6", WholeColumn = True)
  

ShiftUp

Sletter de √łverste radene i et gitt omr√•de og flytter oppover alle cellene under det ber√łrte omr√•det. Gjeldende valg p√•virkes ikke.

Avhengig av verdien av wholerow -argumentet kan de slettede radene enten spenne over bredden til det angitte området eller spenne over alle kolonnene i raden.

Denne metoden returnerer en streng som representerer plasseringen av den gjenværende delen av startområdet. Hvis alle cellene i det opprinnelige området er slettet, returneres en tom streng.

Syntaks:

svc.ShiftUp(range: str, wholerow: bool = False, opt rows: int): str

Parametre:

område: Området som celler vil bli slettet fra, som en streng.

wholerow : Hvis satt til Usann (standard), vil bredden på de slettede radene være den samme som bredden på det angitte området. Ellers vil den slettede raden dekke alle kolonnene i arket.

rader: Antall rader som skal slettes fra det angitte omr√•det. Standardverdien er h√łyden p√• det opprinnelige omr√•det, som ogs√• er maksimumsverdien for dette argumentet.

Eksempel:

I Basic

    ' Sletter området "A3:D3"; flytter alle cellene under seg én rad opp
    oDoc.ShiftUp("A3:D3")
    ' Sletter den f√łrste raden i omr√•det "A3:D6"
    oDoc.ShiftUp("A3:D6", Rows := 1)
    ' De slettede radene spenner over alle kolonnene i arket
    oDoc.ShiftUp("A3:D6", WholeRow := True)
  
I Python

    myDoc.ShiftUp("A3:D3")
    myDoc.ShiftUp("A3:D6", rows = 1)
    myDoc.ShiftUp("A3:D6", wholerow = True)
  

ShiftRight

Flytter et gitt celleomr√•de til h√łyre ved √• sette inn tomme kolonner. Gjeldende valg p√•virkes ikke.

Avhengig av verdien til wholecolumn-argumentet kan de innsatte kolonnene enten spenne over h√łyden til det angitte omr√•det eller spenne over alle rader i kolonnen.

Denne metoden returnerer en streng som representerer den nye plasseringen av det opprinnelige området.

note

Hvis det forskj√łvede omr√•det overskrider arkkantene, skjer ingenting.


Syntaks:

svc.ShiftRight(range: str, wholecolumn: bool = False, opt columns: int): str

Parametre:

område: Området som vil ha tomme kolonner satt inn til venstre, som en streng.

helkolonne: Hvis satt til False (standard), vil h√łyden p√• de innsatte kolonnene v√¶re den samme som h√łyden p√• det spesifiserte omr√•det. Ellers vil de innsatte kolonnene spenne over alle radene i arket.

kolonner: Antall kolonner som skal settes inn. Standardverdien er bredden på det opprinnelige området.

Eksempel:

I Basic

    ' Flytter omr√•det "A3:A6" til h√łyre ved √©n kolonne; p√•virker bare rad 3 til 6
    oDoc.ShiftRight("A3:A6")
    ' Flytter omr√•det "A3:A6" til h√łyre med fem kolonner
    oDoc.ShiftRight("A3:A6", Columns := 5)
    ' Den innsatte kolonnen dekker alle rader i arket
    oDoc.ShiftRight("A3:A6", WholeColumn := True)
  
I Python

    myDoc.ShiftRight("A3:A6")
    myDoc.ShiftRight("A3:A6", columns = 5)
    myDoc.ShiftRight("A3:A6", wholecolumn = True)
  

SortRange

Sorterer det gitte omr√•det basert p√• et sett med kolonner/rader som anses som n√łkler. Sorteringsrekkef√łlgen kan variere etter kolonne/rad. Den returnerer en streng som representerer det modifiserte celleomr√•det. St√łrrelsen p√• det modifiserte omr√•det er fullt ut bestemt av st√łrrelsen p√• kildeomr√•det.

Syntaks:

svc.SortRange(range: str, sortkeys: any, sortorder: any = "ASC", destinationcell: str = "", containsheader: bool = False, casesensitive: bool = False, sortcolumns: bool = False): str

Parametre:

område: Området som skal sorteres, som en streng.

sorttaster: En skalar (hvis 1 kolonne/rad) eller en rekke kolonne-/radnummer som starter fra 1.

sortorder: En skalar eller en rekke strenger som inneholder verdiene "ASC" (stigende), "DESC" (synkende) eller "" (som standard er stigende). Hvert element er sammenkoblet med det tilsvarende elementet i sorteringstaster. Hvis sorteringsrekkef√łlge-matrisen er kortere enn sorteringsn√łkler, blir de resterende n√łklene sortert i stigende rekkef√łlge.

destinasjonscelle: Destinasjonscellen til det sorterte celleomr√•det, som en streng. Hvis et omr√•de er gitt, vurderes kun dens √łverste venstre celle. Som standard overskrives kildeomr√•det.

containsheader: N√•r Sann er den f√łrste raden/kolonnen ikke sortert.

skiller mellom store og små bokstaver: Bare for strengsammenligninger. Standard = Sann

sortkolonner: N√•r True, sorteres kolonnene fra venstre mot h√łyre. Standard = Sann : rader er sortert fra topp til bunn.

Eksempel:

I Basic

    'Sorter område basert på kolonne A (stigende) og C (synkende)
    oDoc.SortRange("A2:J200", Array(1, 3), Array("ASC", "DESC"), CaseSensitive := True)
  
I Python

    myDoc.SortRange("A2:J200", (1, 3), ("ASC", "DESC"), casesensitive = True)
  
warning

Alle ScriptForge Grunnleggende rutiner eller identifikatorer som er prefikset med et understrekingstegn "_" er reservert for intern bruk. De er ikke ment å brukes i grunnleggende makroer eller Python-skript.


Supporter oss!