BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Dynamische Namensbereiche

Alles zur Programmierung im LibreOffice.
Antworten
fbarc
Beiträge: 33
Registriert: Mi 8. Dez 2021, 02:47

Dynamische Namensbereiche

Beitrag von fbarc » Mi 17. Aug 2022, 00:25

Und noch ein Problem...


Ich habe manchen Zellen und einigen Bereichen einen Namen gegeben.

Speziell sind nun die Namen der Bereiche mein Problem.

Ich habe den Bereich {B10:B27} mit dem Namen "Daten"

Mit [STRG]+[F3] kann man die ja schön verwalten.

Da steht nun

Code: Alles auswählen

$Tabelle1.$B$10:$B$27
drin

Ich möchte nun in der Zelle {I7} den Anfang des Bereichs und in {I8} das Ende definieren können.

Also habe ich in {I7} = 10 und in {I8} = 27 geschrieben

Wenn ich nun die Formel

Code: Alles auswählen

"B"&I7&":B"&I8
eintrage, funktioniert das aber leider nicht.

Ich habe auch im Forum Dinge mit INDIREKT und VERKETTEN gefunden und probiert... habe nichts hinbekommen.

Code: Alles auswählen

VERKETTEN("B";INDIREKT("$Tabelle1.I7");":B";INDIREKT("$Tabelle1.I8"))
Ein paar andere Dinge hatte ich auch noch versucht, aber alles hat nicht geklappt.

Eine Testdatei ist beigefügt
DynNamen.ods
(11.51 KiB) 51-mal heruntergeladen
Gruß
Fabi

--------------------------------
Mein System: Linuxmint 20.2 | LibreOffice Version: 7.3.4.2
--------------------------------
Meine Signatur steht auf der Rückseite

F3K Total
Beiträge: 2409
Registriert: So 10. Apr 2011, 10:10

Re: Dynamische Namensbereiche

Beitrag von F3K Total » Sa 20. Aug 2022, 09:00

Moin,
das geht mit einer UDF, User Defined Function:

Code: Alles auswählen

REM  *****  BASIC  *****
function set_named_range(cA,cE) as string
    sContent = "$Tabelle1.$B$" & cA & ":$B$" &cE
    oSheet = ThisComponent.Sheets(0)
    oNamedRanges = ThisComponent.NamedRanges
    oNamedRange = oNamedRanges.getbyName("Daten")
    oNamedRange.Content = sContent
    set_named_range = sContent
End function
Beispiel anbei, schau in Zelle D14
Gruß R
Dateianhänge
DynNamen.ods
(13.49 KiB) 51-mal heruntergeladen
Windows 10: AOO, LO Linux Mint: AOO, LO

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten