Anzeige
Archiv - Navigation
1608to1612
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

Eindeutige Zelladressen

Eindeutige Zelladressen
22.02.2018 15:09:19
Maik
Hallo liebe Mitglieder des Forums,
vor der Problembeschreibung: Herzlichen Dank für alle Tipps/Tricks und die Zeit die ihr investiert diese Community aufrecht zu erhalten. Die Hilfe die ich in den letzten Monaten durch Foren wie diese beim Lernen von VBA erhalten habe ist unbeschreiblich.
Zum Problem:
Ich arbeite mit verschiedenen Worksheets und tw. mit verschiedenen Workbooks. Nun möchte ich eine absolut eindeutige Zelladresse für z.B. Eingabepositionen/Ausgabepositionen o.ä. in Variablen speichern. Da ich nicht jedes mal : Workbooks(ProjektWorkbookname).Worksheets(DefSheetname).Range("A7").Value = XYZ eingeben möchte wenn der Wert verändert, in diese Zelle etwas eingefügt oder mit ihm gearbeitet wird. Das wichtigste jedoch : Wenn ich den Ort (Sheet/Zellkoordinate) der Eingabezelle verändere müsste ich sonst an jeder Stelle an der der Code verwendet wird den Ortsverweis ändern.
Da die Rangefunktion nicht das Workbook oder Worksheet sondern nur die Zellkoordinate speichert kann ich auch nicht die .Address - Funktion nutzen.
Meinen bisher bester Plan habe ich als File hochgeladen (Ich konnte den Code hier nicht einfügen, es kam zu einem Fehler den ich nicht verstehe): https://www.herber.de/bbs/user/120003.txt
Funktioniert aber auch nicht: "Ungültiger Bezeichner".
Ich hoffe ihr versteht mein Problem, ich würde mich über alternative Herangehensweisen freuen, habe das Gefühl, dass es auch irgendwie leichter gehen muss.
Herzliche Grüße,
Maik P.

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Names
22.02.2018 15:36:11
Fennek
Hallo,
mit thisworkbooks.Name kann man Zell-Adressen zusammen mit dem Sheet-Namen generieren. Der Namen des Workbooks könnte man in den dazu gehorenden Kommentar schreiben.
Eine Krücke, aber ...
mfg
AW: Names
22.02.2018 16:48:29
Luschi
Hallo Maik,

Da die Rangefunktion nicht das Workbook oder Worksheet sondern nur
die Zellkoordinate speichert kann ich auch nicht die .Address - Funktion nutzen.
Da bist Du aber schlecht informiert.
Mit Range("A5").Parent.Name bzw. Range("A5").Parent.Parent.Name erhält man den Tabellen- bzw. den Dateinamen (ohne Pfad).
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Eindeutige Zelladressen
22.02.2018 16:07:16
Werner
Hallo Maik,
da würde ich einfach drei Zellen auf einem Blatt verwenden, um das entsprechend zusammen zu setzen. Wenn du dann Änderungen brauchst, dann brauchst du nur die entsprechenden Zelle auf dem Blatt zu ändern und brauchst nich an den Code ran.
Beispiel:
Tabellenblatt 1
Zelle A1: Name der Arbeitsmappe (mit Endung)
Zelle A2: Name des Tabellenblattes
Zelle A3: Name der Zelle
Siehe mal das Beispiel in der Datei im Anhang.
https://www.herber.de/bbs/user/120006.xlsm
Gruß Werner
AW: Eindeutige Zelladressen
22.02.2018 17:20:39
Maik
Vielen Dank für die Gedanken bisher,
@Luschi
Leider erkenne ich nicht ganz wie ich mir das zu Nutze machen kann im Bezug auf mein Problem, auch wenn Du vollkommen Recht hattest mit Deiner Aussage.
@Werner
Das ist eine gute Idee, für die Variation der Zellpositionen, das hilft mir aber leider nicht die genaue Zellposition in eine Variable zu verpacken (oder ich erkenne die Möglichkeit nicht) mit der ich dann in Tabellenübergreifenden Rechnungen arbeiten kann.
Anzeige
AW: Eindeutige Zelladressen
22.02.2018 17:27:23
Werner
Hallo Maik,
und ich habe keine Ahnung was du vor hast.
? -> Plan war dann : XYEingabeAdresse.Value = ...(Spätere Rechnung) ?
Gruß Werner
AW: Eindeutige Zelladressen
22.02.2018 17:58:03
Maik
Also hypothetisches Projekt:
Ich habe vier Tabellenblättern.
Blatt 1: Manuelle Eingabe von Werten (z.B. Versuchsbedingungen wie Temperatur, Druck o.ä,) z.B. Auslesen: EingabeTemperaturAdresse.Value o.ä.
Blatt 2: Tabelle mit Versuchswerten (Wertepaar aus Zeit und Volumen)
Blatt 3: Rechnungen mit Werten aus Blatt 1 und 2.
Blatt 4: Ergebnisse aus Blatt 3, Versuchsbedingungen aus Blatt 1 werden in einer Tabelle aufgetragen. z.B. Ergebnis einfügen: AusgabeWasserstoffstromAdresse.Value = BerechnungVolumen.Value/ LetzteZelleZeit.Value
Das ist grob das woran ich gerade arbeite. Dabei geht es darum, dass Blatt 4 eine Zusammenfassung für das Projekt ist. Ein Projekt besteht aus mehreren Versuchen.
Jeder Versuch hat Blatt 1 bis 3. So entsteht eine Arbeitsmappe mit 1+ X*3 Blättern (X ist die Anzahl der Versuche). Teilweise wird dann auch ein anderes Workbook geöffnet weil manche Instrumente .csv Datein ausgeben und die ausgelesen werden sollen.
Ausserdem möchte ich variabel bei der Gestaltung der UI bleiben und es im Zweifelsfall während der Entwicklung relativ schnell ändern können. Außerdem werden die Sheetnamen variabel werden (da ja neue Versuche hinzukommen), wenn ich das Adressproblem gelöst bekomme weiß ich schon wie ich weiter arbeite , zumindest habe ich einen Plan haha =D.
Anzeige
AW: Eindeutige Zelladressen
23.02.2018 08:02:09
Luschi
Hallo Maik,
um dynamische Bezüge zu verwenden benutze ich:
- intelligente Tabellen (siehe als 'Tabelle formatieren' im Start-Register)
- Definieren von Namen (bis zu 750 pro Arbeitsmappe)
- diese Namen zeigen nicht nur auf Tabellenbereiche
- sondern enthalten auch die Ergebnisse von Berechnungsformeln in den Namen
- Objektvariablen beim Zugriff auf Arbeitsmappen, Tabellen, ListObjekten, Zellbereichen
- kurze knackige Bezeichner statt ungarischer Notation
- wobei ich diese Bezeichner in einer Dokumentationstabelle beschreibe
  (aber nur, wenn der Auftraggeber nicht zu knauserig ist)
  und nur nach angesetzter Stundenzahl zahlt statt auch die Zeiteinsparung für die Firma
  zu berücksichtigen
Gruß von Luschi
aus klein-Paris
-
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige