LibreOffice 7.2 Hjelp
Provides a collection of methods for manipulating and transforming arrays of one dimension (vectors) and arrays of two dimensions (matrices). This includes set operations, sorting, importing to and exporting from text files.
Matriser med mer enn to dimensjoner kan ikke brukes med metodene i denne tjenesten, det eneste unntaket er CountDims-metoden som godtar matriser med et hvilket som helst antall dimensjoner.
Matriseelementer kan inneholde alle typer verdier, inkludert (under)matriser.
Før du bruker Matrise-tjenesten, må ScriptForge-biblioteket lastes ved å bruke:
GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
Når du laster biblioteket, opprettes SF_Array-objektet som kan brukes til å kalle metodene i Tabell-tjenesten.
Følgende kodebiter viser de ulike måtene å kalle metoder i Matrise-tjenesten (tilføy-metoden brukes som et eksempel):
SF_Array.Append(...)
Dim arr : arr = SF_Array
arr.Append(...)
Dim arr : arr = CreateScriptService("Array")
arr.Append(...)
The CreateScriptService method is only available after you have loaded the ScriptForge library.
Det første argumentet for de fleste metoder er matrise-objektet som skal vurderes. Den sendes alltid ved referanse og forblir uendret. Metoder som Legg til, Legg til foran, osv. returnerer et nytt matrise-objekt etter at de er utført.
Legger til elementene som er oppført som argumenter på slutten av inndatamatrisen.
SF_Array.Append(Array_1D As Variant, arg0 As Variant, [arg1 As Variant], ...) As Variant
Array_1D : the pre-existing array, may be empty.
arg0, ... : a list of items to append to Array_1D.
Sub Example_Append()
Dim a As Variant
a = SF_Array.Append(Array(1, 2, 3), 4, 5)
' (1, 2, 3, 4, 5)
End Sub
Legger til en ny kolonne på høyre side av en todimensjonal matrise. Den resulterende matrisen har de samme nedre grensene som den første todimensjonale matrisen.
SF_Array.AppendColumn(Array_2D As Variant, New_Column As Variant) As Variant
Array_2D : the pre-existing array, may be empty. If that array has only one dimension, it is considered as the first column of the resulting two-dimensional array.
New_Column : a 1-dimensional array with as many items as there are rows in Array_2D.
Sub Example_AppendColumn()
Dim a As Variant, b As variant
a = SF_Array.AppendColumn(Array(1, 2, 3), Array(4, 5, 6))
' ((1, 4), (2, 5), (3, 6))
b = SF_Array.AppendColumn(a, Array(7, 8, 9))
' ((1, 4, 7), (2, 5, 8), (3, 6, 9))
c = SF_Array.AppendColumn(Array(), Array(1, 2, 3))
' ∀ i ∈ {0 ≤ i ≤ 2} : b(0, i) ≡ i
End Sub
Legg til en ny rad nederst i en todimensjonal matrise. Den resulterende matrisen har de samme nedre grensene som den første todimensjonale matrisen.
SF_Array.AppendRow(Array_2D As Variant, Row As Variant) As Variant
Array_2D : the pre-existing array, may be empty. If that array has 1 dimension, it is considered as the first row of the resulting 2 dimension array.
Row : a 1D array with as many items as there are columns in Array_2D.
Sub Example_AppendRow()
Dim a As Variant, b As variant
a = SF_Array.AppendRow(Array(1, 2, 3), Array(4, 5, 6))
' ((1, 2, 3), (4, 5, 6))
b = SF_Array..AppendRow(Array(), Array(1, 2, 3))
' ∀ i ∈ {0 ≤ i ≤ 2} : b(i, 0) ≡ i
End Sub
Sjekk om en én-dimensjons matrise inneholder et bestemt tall, tekst eller dato. Tekstsammenligning kan skille mellom store og små bokstaver eller ikke.
Sorterte inndatamatriser må fylles homogent, noe som betyr at alle elementer må være skalarer av samme type (Tom og Null elementer er forbudt).
Resultatet av metoden er uforutsigbart når matrisen kunngjøres som sortert og i realiteten ikke er det.
Et binært søk gjøres når matrisen er sortert, ellers skannes den ganske enkelt fra topp til bunn og Tom og Null elementer ignoreres.
SF_Array.Contains(Array_1D, ToFind As Variant, [CaseSensitive As Boolean], [SortOrder As String]) As Boolean
Array_1D : the array to scan.
ToFind : a number, a date or a string to find.
CaseSensitive : Only for string comparisons, default = False.
SortOrder : "ASC", "DESC" or "" (= not sorted, default)
Sub Example_Contains()
Dim a As Variant
a = SF_Array.Contains(Array("A","B","c","D"), "C", SortOrder := "ASC") ' True
SF_Array.Contains(Array("A","B","c","D"), "C", CaseSensitive := True) ' False
End Sub
Lagre innholdet i en 2-kolonner matrise i et ScriptForge.Dictionary-objektet.
Nøkkelen vil bli trukket ut fra den første kolonnen, elementet fra den andre.
SF_Array.ConvertToDictionary(Array_2D As Variant) As Variant
Array_1D : the first column must contain exclusively strings with a length > 0, in any order.
Sub Example_ConvertToDictionary()
Dim a As Variant, b As Variant
a = SF_Array.AppendColumn(Array("a", "b", "c"), Array(1, 2, 3))
b = SF_Array.ConvertToDictionary(a)
MsgBox b.Item("c") ' 3
End Sub
Count the number of dimensions of an array. The result can be greater than two.
If the argument is not an array, returns -1
If the array is not initialized, returns 0.
SF_Array.CountDims(Array_ND As Variant) As Integer
Array_ND : the array to examine.
Sub Example_CountDims()
Dim a(1 To 10, -3 To 12, 5)
MsgBox SF_Array.CountDims(a) ' 3
End Sub
Bygg et sett, som en nullbasert matrise, ved å bruke differanseoperatoren på de to inngangsmatrisene. Resulterende elementer kommer fra den første matrisen og ikke fra den andre.
Den resulterende matrisen er sortert i stigende rekkefølge.
Begge innput-matriser må fylles homogent, elementene deres må være skalarer av samme type. Tomme og Null elementer er forbudt.
Tekstsammenligning kan skille mellom store og små bokstaver.
SF_Array.Difference(Array1_1D As Variant, Array2_1D As Variant[, CaseSensitive As Boolean]) As Variant
Array1_1D : A 1 dimension reference array, whose items are examined for removal.
Array2_1D : A 1 dimension array, whose items are subtracted from the first input array.
CaseSensitive : Only if the arrays are populated with strings, default = False.
Sub Example_Difference()
Dim a As Variant
a = SF_Array.Difference(Array("A", "C", "A", "b", "B"), Array("C", "Z", "b"), True)
' ("A", "B")
End Sub
Skriv alle elementer i matrisen sekvensielt til en tekstfil. Hvis filen allerede eksisterer, vil den bli overskrevet uten forvarsel.
SF_Array.ExportToTextFile(Array_1D As Variant, FileName As String, [Encoding As String]) As Boolean
Array_1D : The array to export. It must contain only strings.
FileName : the name of the text file containing the data. The name is expressed as given by the current FileNaming property of the SF_FileSystem service. Default = any (both the URL format and the native operating system format are admitted).
Encoding : The character set that should be used. Use one of the names listed in IANA character sets. Note that LibreOffice may not implement all existing character sets. Default is "UTF-8".
Sub Example_ExportToTextFile()
SF_Array.ExportToTextFile(Array("A","B","C","D"), "C:\Temp\A short file.txt")
End Sub
Trekk ut en spesifikk kolonne fra en todimensjonal matrise som en ny matrise.
Dens nedre LBound og øvre UBound grenser er identiske med den for den første dimensjonen til inngangsmatrisen.
SF_Array.ExtractColumn(Array_2D As Variant, ColumnIndex As Long) As Variant
Array_2D : The array from which to extract.
ColumnIndex : The column number to extract - must be in the interval [LBound, UBound].
Sub Example_ExtractColumn
'Oppretter en 3x3-matrise: |1, 2, 3|
' |4, 5, 6|
' |7, 8, 9|
Dim mat as Variant, col as Variant
mat = SF_Array.AppendRow(Array(), Array(1, 2, 3))
mat = SF_Array.AppendRow(mat, Array(4, 5, 6))
mat = SF_Array.AppendRow(mat, Array(7, 8, 9))
Trekker ut den tredje kolonnen: |3, 6, 9|
col = SF_Array.ExtractColumn(mat, 2)
End Sub
Trekk ut en spesifikk rad fra en todimensjonal matrise som en ny matrise.
Dens nedre LBound og øvre UBound grenser er identiske med den for den andre dimensjonen til inngangsmatrisen.
SF_Array.ExtractRow(Array_2D As Variant, RowIndex As Long) As Variant
Array_2D : The array from which to extract.
RowIndex : The row number to extract - must be in the interval [LBound, UBound].
Sub Example_ExtractRow
'Oppretter en 3x3-matrise: |1, 2, 3|
' |4, 5, 6|
' |7, 8, 9|
Dim mat as Variant, row as Variant
mat = SF_Array.AppendRow(Array(), Array(1, 2, 3))
mat = SF_Array.AppendRow(mat, Array(4, 5, 6))
mat = SF_Array.AppendRow(mat, Array(7, 8, 9))
Trekker ut den første raden: |1, 2, 3|
row = SF_Array.ExtractRow(mat, 0)
End Sub
Stable alle enkeltelementer i en matrise og alle elementer i undermatrisene i én ny matrise uten undermatriser. Tomme undermatriser ignoreres, og undermatriser med flere dimensjoner større enn én blir ikke flatet ut.
SF_Array.Flatten(Array_1D As Variant) As Variant
Array_1D : the pre-existing array, may be empty.
Sub Example_Flatten()
Dim a As Variant
a = SF_Array.Flatten(Array(Array(1, 2, 3), 4, 5))
' (1, 2, 3, 4, 5)
End Sub
Du kan bruke Flatte-metoden sammen med andre metoder som Legg til eller Legg til foran for å sette sammen et sett med 1D-matriser til en enkelt 1D-matrise.
Neste er et eksempel på hvordan metodene Flate og Legg til kan kombineres for å sette sammen tre matriser.
Sub Concatenate_Example
'Lager tre matriser for dette eksemplet
Dim a as Variant, b as Variant, c as Variant
a = Array(1, 2, 3)
b = Array(4, 5)
c = Array(6, 7, 8, 9)
'Setter sammen de tre matrisene til en enkelt 1D-matrise
Dim arr as Variant
arr = SF_Array.Flatten(SF_Array.Append(a, b, c))
'(1, 2, 3, 4, 5, 6, 7, 8, 9)
End Sub
Importer dataene i en kommadelte verdier (CSV)-fil. Kommaet kan erstattes av et hvilket som helst tegn.
Det aktuelle CSV-formatet er beskrevet i IETF Common Format og MIME Type for CSV-filer.
Hver linje i filen inneholder en fullstendig post (linjedeling er ikke tillatt).
Sekvenser som \n, \t, ... forblir imidlertid uendret. Bruk metoden SF_String.Unescape() for å administrere dem.
Metoden returnerer en todimensjonal matrise hvis rader tilsvarer en enkelt post som er lest fra filen og hvis kolonner tilsvarer et felt i posten. Det foretas ingen kontroll av sammenhengen mellom felttypene på tvers av kolonnene. En beste gjetning vil bli gjort for å identifisere numeriske og datotyper.
Hvis en linje inneholder færre eller flere felt enn den første linjen i filen, vil et unntak bli skapt. Tomme linjer blir imidlertid ganske enkelt ignorert. Hvis størrelsen på filen overskrider grensen for antall elementer (se inne i koden), utløses en advarsel og matrisen avkortes.
SF_Array.ImportFromCSVFile(FileName As String, [Delimiter As String], [DateFormat As String]) As Variant
FileName : the name of the text file containing the data. The name is expressed as given by the current FileNaming property of the SF_FileSystem service. Default = any (both the URL format and the native operating system format are admitted).
Delimiter : A single character, usually, a comma, a semicolon or a TAB character. Default = ",".
DateFormat : A special mechanism handles dates when DateFormat is either "YYYY-MM-DD", "DD-MM-YYYY" or "MM-DD-YYYY". The dash (-) may be replaced by a dot (.), a slash (/) or a space. Other date formats will be ignored. Dates defaulting to "" are considered as normal text.
Given this CSV file:
Name,DateOfBirth,Address,City
Anna,2002/03/31,"Rue de l'église, 21",Toulouse
Fred,1998/05/04,"Rue Albert Einstein, 113A",Carcassonne
Sub Example_ImportFromCSVFile()
Dim a As Variant
a = SF_Array.ImportFromCSVFile("C:\Temp\myFile.csv", DateFormat := "YYYY/MM/DD")
MsgBox a(0, 3) ' City
MsgBox TypeName(a(1, 2)) ' Date
MsgBox a(2, 2) ' Rue Albert Einstein, 113A
End Sub
Se i en éndimensjons matrise etter et tall, en streng eller en dato. Tekstsammenligning kan skille mellom store og små bokstaver.
Hvis matrisen er sortert, må den fylles homogent, noe som betyr at alle elementer må være skalarer av samme type (Tom og Null elementer er forbudt).
Resultatet av metoden er uforutsigbart når matrisen settes til sortert og faktisk ikke er det.
Et binært søk utføres på sorterte matriser. Ellers skannes matriser ganske enkelt fra topp til bunn, og Tomme og Null elementer ignoreres.
Metoden returnerer LBound(innputt matrise) - 1 hvis søket ikke var vellykket.
SF_Array.IndexOf(Array_1D, ToFind As Variant, [CaseSensitive As Boolean], [SortOrder As String]) As Long
Array_1D : the array to scan.
ToFind : a number, a date or a string to find.
CaseSensitive : Only for string comparisons, default = False.
SortOrder : "ASC", "DESC" or "" (= not sorted, default)
Sub Example_IndexOf()
MsgBox SF_Array.IndexOf(Array("A","B","c","D"), "C", SortOrder := "ASC") ' 2
MsgBox SF_Array.IndexOf(Array("A","B","c","D"), "C", CaseSensitive := True) ' -1
End Sub
Sett inn før en gitt indeks for inndatamatrisen elementene som er oppført som argumenter.
Argumenter settes inn blindt. Hver av dem kan enten være en skalar av hvilken som helst type eller en undergruppe.
SF_Array.Insert(Array_1D As Variant, Before As Long, arg0 As Variant, [arg1 As Variant], ...) As Variant
Array_1D : the pre-existing array, may be empty.
Before : the index before which to insert; must be in the interval [LBound, UBound + 1].
arg0, ... : a list of items to insert inside Array_1D.
Sub Example_Insert()
Dim a As Variant
a = SF_Array.Insert(Array(1, 2, 3), 2, "a", "b")
' (1, 2, "a", "b", 3)
End Sub
Insert in a sorted array a new item on its place.
The array must be filled homogeneously, meaning that all items must be scalars of the same type.
Empty and Null items are forbidden.
SF_Array.InsertSorted(Array_1D As Variant, Item As Variant, SortOrder As String, CaseSensitive As Boolean) As Variant
Array_1D : The array to sort.
Item : The scalar value to insert, of the same type as the existing array items.
SortOrder : "ASC" (default) or "DESC".
CaseSensitive : Only for string comparisons, default = False.
Sub Example_InsertSorted()
Dim a As Variant
a = SF_Array.InsertSorted(Array("A", "C", "a", "b"), "B", CaseSensitive := True)
' ("A", "B", "C", "a", "b")
End Sub
Bygg et sett, som en nullbasert matrise, ved å bruke skjæringssettoperatoren på de to inngangsmatrisene. Resulterende elementer finnes i begge matriser.
Den resulterende matrisen er sortert i stigende rekkefølge.
Begge innputt-matriser må fylles homogent, med andre ord må alle elementer være skalarer av samme type. Tomme og Null elementer er forbudt.
Tekstsammenligning kan skille mellom store og små bokstaver eller ikke.
SF_Array.Intersection(Array1_1D As Variant, Array2_1D As Variant[, CaseSensitive As Boolean]) As Variant
Array1_1D : The first input array.
Array2_1D : The second input array.
CaseSensitive : Applies to arrays populated with text items, default = False.
Sub Example_Intersection()
Dim a As Variant
a = SF_Array.Intersection(Array("A", "C", "A", "b", "B"), Array("C", "Z", "b"), True)
' ("C", "b")
End Sub
Slå sammen en todimensjonal matrise med to skilletegn, én for kolonnene, én for radene.
SF_Array.Join2D(Array_2D As Variant, ColumnDelimiter As String, RowDelimiter As String, Quote As Boolean) As String
Array_2D : Each item must be either text, a number, a date or a boolean.
Dates are transformed into the YYYY-MM-DD hh:mm:ss format.
Invalid items are replaced by a zero-length string.
ColumnDelimiter : Delimits each column (default = Tab/Chr(9)).
RowDelimiter: delimits each row (default = LineFeed/Chr(10))
Quote : if True, protect strings with double quotes. The default is False.
Sub Example_Join2D()
- | 1, 2, "A", [2020-02-29], 5 |
- SF_Array.Join_2D(| 6, 7, "this is a string", 9, 10 |, ",", "/")
- ' "1,2,A,2020-02-29 00:00:00,5/6,7,this is a string,9,10"
End Sub
Sett foran på begynnelsen av inndatamatrisen elementene som er oppført som argumenter.
SF_Array.Prepend(Array_1D As Variant, arg0 As Variant, [arg1 As Variant], ...) As Variant
Array_1D : the pre-existing array, may be empty.
arg0, ... : a list of items to prepend to Array_1D.
Sub Example_Prepend()
Dim a As Variant
a = SF_Array.Prepend(Array(1, 2, 3), 4, 5)
' (4, 5, 1, 2, 3)
End Sub
Sett en ny kolonne foran på venstre side av en todimensjonal matrise. Den resulterende matrisen har de samme nedre grensene som den første todimensjonale matrisen.
SF_Array.PrependColumn(Array_2D As Variant, Column As Variant) As Variant
Array_2D : the pre-existing array, may be empty. If that array has 1 dimension, it is considered as the last column of the resulting 2 dimension array.
Column : a 1 dimension array with as many items as there are rows in Array_2D.
Sub Example_PrependColumn()
Dim a As Variant, b As variant
a = SF_Array.PrependColumn(Array(1, 2, 3), Array(4, 5, 6))
' ((4, 1), (5, 2), (6, 3))
b = SF_Array.PrependColumn(Array(), Array(1, 2, 3))
' ∀ i ∈ {0 ≤ i ≤ 2} : b(0, i) ≡ i
End Sub
Prepend at the beginning of a two dimension array a new row. The resulting array has the same lower boundaries as the initial two dimension array.
SF_Array.PrependRow(Array_2D As Variant, Row As Variant) As Variant
Array_2D : the pre-existing array, may be empty. If that array has 1 dimension, it is considered as the last row of the resulting 2 dimension array.
Row : a 1 dimension array containing as many items as there are rows in Array_2D.
Sub Example_PrependRow()
Dim a As Variant, b As variant
a = SF_Array.PrependRow(Array(1, 2, 3), Array(4, 5, 6))
' ((4, 5, 6), (1, 2, 3))
b = SF_Array.PrependRow(Array(), Array(1, 2, 3))
' ∀ i ∈ {0 ≤ i ≤ 2} : b(i, 0) ≡ i
End Sub
Initialiser en ny nullbasert matrise med numeriske verdier.
SF_Array.RangeInit(From As [number], UpTo As [number] [, ByStep As [number]]) As Variant
From : value of the first item.
UpTo : The last item should not exceed UpTo.
ByStep : The difference between two successive items (default = 1).
Sub Example_RangeInit()
Dim a As Variant
a = SF_Array.RangeInit(10, 1, -1)
' (10, 9, 8, 7, 6, 5, 4, 3, 2, 1)
End Sub
Returner den omvendte éndimensjonale inndatamatrisen.
SF_Array.Reverse(Array_1D As Variant) As Variant
Array_1D : The array to reverse.
Sub Example_Reverse()
Dim a As Variant
a = SF_Array.Reverse(Array("a", 2, 3, 4))
' (4, 3, 2, "a")
End Sub
Return a random permutation of a one dimension array.
SF_Array.Shuffle(Array_1D As Variant) As Variant
Array_1D : The array to shuffle.
Sub Example_Shuffle()
Dim a As Variant
a = SF_Array.Shuffle(Array(1, 2, 3, 4))
' Unpredictable
End Sub
Return a subset of a one dimension array.
SF_Array.Slice(Array_1D As Variant, From As Long, [UpTo As Long]) As Variant
Array_1D : The array to slice.
From : The lower index in Array_1D of the subarray to extract (From included)
UpTo : The upper index in Array_1D of the subarray to extract (UpTo included). Default = upper bound of Array_1D. If UpTo < From then the returned array is empty.
Sub Example_Slice()
Dim a As Variant
a = SF_Array.Slice(Array(1, 2, 3, 4, 5), 1, 3) ' (2, 3, 4)
End Sub
Sorter en éndimensjons matrise i stigende eller synkende rekkefølge. Tekstsammenligninger kan skille mellom store og små bokstaver eller ikke.
Matrisen må fylles homogent, noe som betyr at elementer må være skalarer av samme type.
Tomme og Null elementer er tillatt. Konvensjonelt Tom < Null < enhver annen skalarverdi.
SF_Array.Sort(Array_1D As Variant, SortOrder As String, CaseSensitive As Boolean) As Variant
Array_1D : The array to sort.
SortOrder : "ASC" (default) or "DESC".
CaseSensitive : Only for string comparisons, default = False.
Sub Example_Sort()
Dim a As Variant
a = SF_Array.Sort(Array("a", "A", "b", "B", "C"), CaseSensitive := True)
' ("A", "B", "C", "a", "b")
End Sub
Returner en permutasjon av kolonnene i en todimensjonal matrise, sortert etter verdiene til en gitt rad.
Raden skal fylles homogent, noe som betyr at alle elementer må være skalarer av samme type.
Tomme og Null elementer er tillatt. Konvensjonelt Empty < Null < enhver annen skalarverdi.
SF_Array.SortColumns(Array_1D As Variant, RowIndex As Long, SortOrder As String, CaseSensitive As Boolean) As Variant
Array_1D : The array to sort.
RowIndex : The index of the row to sort the columns on.
SortOrder : "ASC" (default) or "DESC".
CaseSensitive : Only for string comparisons, default = False.
Sub Example_SortColumns()
- | 5, 7, 3 | ' | 7, 5, 3 |
- SF_Array.SortColumns(| 1, 9, 5 |, 2, "ASC") ' | 9, 1, 5 |
- | 6, 1, 8 | ' | 1, 6, 8 |
End Sub
Returner en permutasjon av radene i en todimensjonal matrise, sortert etter verdiene til en gitt kolonne.
Kolonnen må fylles homogent, derfor må alle elementer være skalarer av samme type.
Tomme og Null elementer er tillatt. Konvensjonelt Tom < Null < enhver annen skalarverdi.
SF_Array.SortRows(Array_1D As Variant, ColumnIndex As Long, SortOrder As String, CaseSensitive As Boolean) As Variant
Array_1D : The array to sort.
RowIndex : The index of the column to sort the rows on.
SortOrder : "ASC" (default) or "DESC".
CaseSensitive : Only for string comparisons, default = False.
Sub Example_SortRows()
- | 5, 7, 3 | ' | 1, 9, 5 |
- SF_Array.SortRows(| 1, 9, 5 |, 2, "ASC") ' | 5, 7, 3 |
- | 6, 1, 8 | ' | 6, 1, 8 |
End Sub
Swap rows and columns in a two dimension array.
SF_Array.Transpose(Array_2D As Variant) As Variant
Array_2D : The array to transpose.
Sub Example_Transpose()
- | 1, 2 | ' | 1, 3, 5 |
- SF_Array.Transpose(| 3, 4 |) ' | 2, 4, 6 |
- | 5, 6 |
End Sub
Fjern alle Null, Tomme og null-lengde oppføringer fra en éndimensjons matrise.
Strengelementer trimmes med LibreOffice Basic Trim()-funksjonen.
SF_Array.TrimArray(Array_1D As Variant) As Variant
Array_1D : The array to scan.
Sub Example_TrimArray()
Dim a As Variant
a = SF_Array.TrimArray(Array("A","B",Null," D "))
' ("A","B","D")
End Sub
Build a set, as a zero-based array, by applying the union operator on the two input arrays. Resulting items originate from both arrays.
The resulting array is sorted in ascending order.
Both input arrays must be filled homogeneously, their items must be scalars of the same type. Empty and Null items are forbidden.
Text comparison can be case sensitive or not.
SF_Array.Union(Array1_1D As Variant, Array2_1D As Variant[, CaseSensitive As Boolean]) As Variant
Array1_1D : The first input array.
Array2_1D : The second input array.
CaseSensitive : Only if the arrays are populated with strings, default = False.
Sub Example_Union()
Dim a As Variant
a = SF_Array.Union(Array("A", "C", "A", "b", "B"), Array("C", "Z", "b"), True)
' ("A", "B", "C", "Z", "b")
End Sub
Bygg et sett med unike verdier utledet fra inndatamatrisen.
Inndatamatrisen må fylles homogent, elementene må være skalarer av samme type. Tomme og Null elementer er forbudt.
Tekstsammenligning kan skille mellom store og små bokstaver.
SF_Array.Unique(Array_1D As Variant, CaseSensitive As Boolean]) As Variant
Array_1D : The input array.
CaseSensitive : Only if the array is populated with texts, default = False.
Sub Example_Unique()
Dim a As Variant
a = SF_Array.Unique(Array("A", "C", "A", "b", "B"), CaseSensitive := True)
' ("A", "B", "C", "b")
End Sub