Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1036to1040
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Adresse des benannten Bereiches ohne VBA

Adresse des benannten Bereiches ohne VBA
06.01.2009 22:09:00
Peter
Guten Abend
Gibt es eine Möglichkeit, mittels einer Formelabfrage ausfindig zu machen, wo ein bestimmter Bereich liegt?
Angenommen der Druckbereich in Tabelle1 ist B2:P2 müsste das Ergebnis der Abfrage
=Tabelle1!$B$2:$P$2
sein.
Gruss, Peter

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Adresse des benannten Bereiches ohne VBA
06.01.2009 22:20:00
Reinhard
Hi Peter,
das geht über Namen vergeben, siehe den Namen Ö

Tabellenblatt: [Mappe2]!Tabelle1
│               E              │
──┼────────── _
9472;───────────────────┤
1 │ =[Mappe2]Tabelle1!Z2S1:Z12S4 │
──┴────────── _
9472;───────────────────┘
Benutzte Formeln:
E1:  =Ö
Festgelegte Namen:
Tabelle1!Print_Area: =Tabelle1!$A$2:$D$12, unbenutzt in Selektion.
Ö                  : =NAMEN.ZUORDNEN("Druckbereich")
E1
hat das Zahlenformat: Standard


Gruß
Reinhard

AW: Adresse des benannten Bereiches ohne VBA
06.01.2009 22:21:10
Sonnenpeter
Hallo,
vielleicht hilft Dir das weiter.
$A$7:$E$11 =ZELLE("Adresse";Range)&":"&ZELLE("Adresse";INDEX(Range;ZEILEN(Range);SPALTEN(Range)))
Gruß Sonnenpeter
Anzeige
AW: Adresse des benannten Bereiches ohne VBA
06.01.2009 22:21:00
Reinhard
Hi Peter,
das geht über Namen vergeben, siehe den Namen Ö

Tabellenblatt: [Mappe2]!Tabelle1
|               E              |
1 | =[Mappe2]Tabelle1!Z2S1:Z12S4 |
Benutzte Formeln:
E1:  =Ö
Festgelegte Namen:
Tabelle1!Print_Area: =Tabelle1!$A$2:$D$12, unbenutzt in Selektion.
Ö                  : =NAMEN.ZUORDNEN("Druckbereich")
E1
hat das Zahlenformat: Standard


Gruß
Reinhard

AW: Adresse des benannten Bereiches ohne VBA
06.01.2009 22:23:17
Uwe
Hi Peter,
per Formel wüsste ich nicht wie (daher Frage offen), aber wenn Du auf:
Einfügen / Name / Einfügen gehts und dann:
Liste einfügen.
anklickst, erstellt Excel eine Liste aller Namen und der Bereiche.
Vielleicht hilft Dir das schon (evtl. mit einem SVERWEIS darauf zugreifen?)
Gruß
Uwe
(:o)
Anzeige
AW: Adresse des benannten Bereiches ohne VBA
06.01.2009 22:28:00
Daniel
Hi
zumindest den Zellbereich kannst du so ermitteln:
=ADRESSE(ZEILE(Druckbereich);SPALTE(Druckbereich);4;WAHR)&":"&ADRESSE(ZEILE(Druckbereich) +ZEILEN(Druckbereich)-1;SPALTE(Druckbereich)+SPALTEN(Druckbereich)-1;4;WAHR)
wie man an den Tabellenblattnamen kommt, weiß ich grad auch nicht.
Gruß, Daniel
AW: Adresse des benannten Bereiches ohne VBA
06.01.2009 23:31:08
Peter
Guten Abend
Vielen Dank für alle Antworten.
Die eleganteste Lösung wäre für mich diejenige von Reinhard gewesen - nur wollte ich die Ausgabe nicht im Format ZS (oder könnte man dies noch umwandeln?).
Deshalb habe ich aufgrund der Antworten nun folgende Formel gebastellt:
=TEIL(ZELLE("Dateiname";Druckbereich);SUCHEN("]";ZELLE("Dateiname";Druckbereich))+1;99) &"!"&ADRESSE(ZEILE(Druckbereich);SPALTE(Druckbereich);1;WAHR)&":"&ADRESSE(ZEILE(Druckbereich) +ZEILEN(Druckbereich)-1;SPALTE(Druckbereich)+SPALTEN(Druckbereich)-1;1;WAHR)
Gruss, Peter
Anzeige
Wenn man ohne VBA auskommen will,...
07.01.2009 00:39:47
Luc:-?
...Peter,
muss man halt damit leben... ;-)
Die "elegante" Lösung von Reinhard beruht zwar nicht auf VBA, aber auf (noch xl-integrierten) XLM[akro]-Fktt. Sie ist nicht mal mehr halb so elegant, wenn du sie mit xlStandardfktt in das von dir gewünschte A1-Format umwandelst wie bspw so...
=TEIL(ZELLE("Dateiname";Druckbereich);SUCHEN("]";ZELLE("Dateiname";Druckbereich))+1;99) &"!"&
ADRESSE(ZEILE(INDIREKT(TEIL(DrBer;2;SUCHEN(":";DrBer)-2);0));SPALTE(INDIREKT(TEIL(DrBer;2;
SUCHEN(":";DrBer)-2);0)))&":"&ADRESSE(ZEILE(INDIREKT(TEIL(DrBer;SUCHEN(":";DrBer)+1;99);0));
SPALTE(INDIREKT(TEIL(DrBer;SUCHEN(":";DrBer)+1;99);0)))
Das macht dann 330 Zeichen + die für die benannte Fml!
Allerdings lässt sich die von dir gewählte Fml noch vereinfachen. So wären es dann 223 statt 258 Zeichen...
=TEIL(ZELLE("dateiname";Druckbereich);SUCHEN("]";ZELLE("dateiname";Druckbereich))+1;99) &"!"&
ZELLE("adresse";Druckbereich)&":"&ADRESSE(ZEILE(Druckbereich)+ZEILEN(Druckbereich)-1;
SPALTE(Druckbereich)+SPALTEN(Druckbereich)-1)
Die wirklich eleganteste Lösung ist der bzw basiert auf dem Vorschlag mit der Namensliste. Diese ist nämlich genau dann unverzichtbar, wenn man eine ordentliche Tabellendokumentation aufbauen will. Und das fkt immer und liefert vollständige Namen und ihre Bezugsformeln! Deshalb basieren meine udFktt für die Namensauswertung auf analogen Mechanismen; man muss also nicht wissen, für welches Tabellenblatt der Name gilt!
Alle anderen Lösungen fkt nämlich nur auf dem Blatt, für das auch der Name gilt. Auf anderen Blättern kannst du das ALLES vergessen!
Fazit: Wirkliche "Eleganz" und Flexibilität ist hier nur mit VBA zu erreichen. Wenn das ein (über)vorsichtiger Admin nicht begreifen kann bzw will (verständlich, würde einem Laien/Anfänger auch nicht "über den Weg" trauen!), hast du halt Pech gehabt... ;-)
Gruß Luc :-?
Besser informiert sein!
Anzeige
AW: Wenn man ohne VBA auskommen will,...
07.01.2009 00:54:00
Peter
Hallo Luc
Vielen Dank für deine interessanten Hinweise.
Zur Funktionsfähigkeit "meiner" Lösung: Diese ist nach meiner Feststellung nicht nur auf dem Blatt gegeben, sondern in der ganzen Arbeitsmappe. Allerdings weil ich nur beispielshaft den "Druckbereich" erwähnt habe. Ich verwende die Formel jedoch für Namen, die im entsprechenden Workbook einmalig sind (ein Profi würde wohl sagen: globale Gültigkeit haben ... ?).
Freundlicher Gruss, Peter
Die müssen dann aber stets für die ganze...
07.01.2009 02:30:11
Luc:-?
...Mappe gelten, Peter,
sonst tritt dann das gen.Problem auf.
Ansonsten findest du das in xl9 im Menü Einfügen - Name - Einfügen... Die Namen und ihre Bezugsfmln wdn in 2 Spalten ab Auswahlzelle eingefügt. Also entsprechenden Freiraum wählen!
Glück auf!
Luc :-?
Anzeige
wemm Ö nicht reicht nehmen wir halt Ä :-)
07.01.2009 01:06:00
Reinhard
Hallo Luc und alle Interessierten,
zunächst, daß mit dieser Namensliste gibt es in XL2000 nicht, ich finde es nämlich nicht. Richtig?
Wie wäre es dann damit:

Tabellenblatt: [Mappe1]!Tabelle1
|          B          |
1 | =Tabelle1!$A$3:$J$7 |
Benutzte Formeln:
B1:  =Ä
Festgelegte Namen:
Ä                  : =FORMEL.UMWANDELN(Ö;FALSCH;WAHR)
Tabelle1!Print_Area: =Tabelle1!$A$3:$J$7, unbenutzt in Selektion.
Ö                  : =NAMEN.ZUORDNEN("Druckbereich"), unbenutzt in Selektion.
B1
hat das Zahlenformat: Standard


Gruß
Reinhard

Anzeige
Tja, da muss man noch eine Liste...
07.01.2009 02:20:41
Luc:-?
...sämtlicher XLM-Fktt haben, Reinhard,
aber deshalb aktiviere ich nicht mein altes xl5 (falls die da nicht auch schon nicht mehr dokumentiert wdn). Irgendwo im Web schwirren allerdings noch XLM-Listen rum - hab ich schon gesehen!
VBA ist mit Mühe und Not noch mal gerettet worden und auch noch XLM; Letzteres wird aber schon lange nicht mehr offiziell von MS dokumentiert. Damit will man wohl die Benutzerzahl zurückfahren. Irgendwann wird's das also nicht mehr geben. Die Eigenbau-XL4-Makros bereiten schon seit Längerem Probleme. Außerdem habe ich das (seinerzeit geniale) Zeug nicht nötig. Meine udFktt können direkt im TabBlatt eingesetzt wdn und müssen nicht den Umweg über benannte Fmln nehmen!
Wollte man allerdings einigermaßen zukunftssicher arbeiten (für nach xl12), müsste man ohnehin C# für das .Net-Framework verwenden bzw udFkt-VBA-AddIns zu COM-AddIns kompilieren. Oder aber man steigt auf SunBasic für OpenOffice um. Da gibt's ja hier schon einen Pionier... ;-)
Fazit: Wenn VBA Gestern ist, ist XLM Vorgestern!
Allerdings kann ich nur raten, warum MS diese Fktionalität nicht als "normale" Fktt in XL einbindet... Wohl andere Präferenzen bzw Prämissen!?
Gruß Luc :-?
Anzeige
AW: Tja, da muss man noch eine Liste...
07.01.2009 02:58:00
Reinhard
Hallo Luc,
ich bin noch nicht fit für COM-Add Ins, ich glaub dazu brauche ich VB6, habe aber nur VB5.
Ich kann da aber auch was verwechseln.
Ich habe eine Datei namens xlmacr8ge.hlp , da stehen diese XL4 Anweisungen drin. Wenn du willst und in der profilliste stehst kann ich dir sie schicken.
Auf diese XL4-Funktionen kam ich nur durch excelformeln.de.
Bzw. so Anfragen wie man Farben von Zellen ermitteln kann usw.
Aus Interesse habe ich hier schonmal nachgefragt wie ich denn aus den XL4-Funktionen ein Makro bilde und wie ich ich das dann starte.
Leider kam keine brauchbare Antwort, vielleicht weiß das keiner mehr.
Ich weiß nur, die wurden damals in Zellen einer Tabelle geschrieben und dann irgendwie gestartet.
Desgleichen, wenn ich eine Tabelle einfügen will könnte ich auch einen XL5 Dialog einfügen. Schön, damit schon rumgespielt, nur ich habe Null Plan wie ich das irgendwie aufrufe oder sonstwas mit dem Ding mache.
Naja, nicht so wichtig.
PS: wenn ich "nicht so wichtig" sage heißt das i Klartext, verdammt nochmal wie geht denn das, z.B. mit XL2000?
Gruß
Reinhard
Anzeige
AW: Tja, da muss man noch eine Liste...
07.01.2009 21:15:00
Gerd
Hallo Reinhard,
noch im Echteinsatz, aber wie damals ......? :-)
DialogSheets("DialogAUSWAHL").Show

Sub Makro3()
On Error GoTo schluss
If DialogSheets("Dialog6").EditBoxes("Bearbeitungsfeld 4").Text  Empty Then
Beginnstopp = DialogSheets("Dialog6").EditBoxes("Bearbeitungsfeld 4").Text
DialogSheets("Dialog6").EditBoxes("Bearbeitungsfeld 4").Text = Beginnstopp
End If
Exit Sub
schluss: Makro11
End Sub


Gruß Gerd

AW: Tja, da muss man noch eine Liste...
08.01.2009 18:26:32
Reinhard
Hallo Gerd,
danke dir, ich glaube jetzt habe ich das mit XL5-Dialog kapiert.
Mit DialogSheets("Dialogblattname").Show
kann ich das per Vba anzeigen lassen.
Dann kann ich aus "Formular" diese Form bestücken ähnlich einer UF dann z.B. einem Commandbutton ein Makro zuweisen ähnlich deinem dann kann ich Einträge in der Form mittels
DialogSheets("Dialogblattname").EditBoxes("Textboxname").Text
auslesen o.ä.
Sehr schön, das befiedigt meinen Wissensdurst in dem Punkt.
Bliebe noch XL4, kennst du dich da auch aus?
Also daß ich in paar Zellen XL4-Code schreibe und wie ich den starten könnte in XL2000?
z.B. den Klassiker:

Sub Test()
MsgBox "hello world"
End Sub


in drei Zeilen als XL4-Code schreiben, z.B. so
Start()
Zeige "hello world"
Ende
und das dann starte in XL2000? So irgendwie: executeXl4macro(range("A1"))
Die Auskunft, daß das nicht geht reicht mir auch dicke :-)
Gruß
Reinhard
DialogSheets("Dialog6").EditBoxes("Bearbeitungsfeld 4").Text

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige