Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Formel aus Strings zusammensetzen und berechnen

Formel aus Strings zusammensetzen und berechnen
24.10.2006 17:35:29
christian
Hallo liebe Excelgemeinde!
Ich möchte, um Daten aus verschiedenen gleichartigen Dateien in eine zusammenfassende Datei zu bekommen nicht jede Formel von Hand bearbeiten.
Das wären nämlich rund 7000 Zellen, die alle eine andere Referenz besitzen.
Um dies zu vereinfachen möchte ich mir die Verweisformeln vom Schema " ='\\server\pfad[dateiname_1.xls]tabelle1'!$B$2 ", mit den die Inhalte der Ursprungslisten in die Zusammenfassung kopiert wereen, über drei Zellen ("Speicherort"; "Dateiname"; "Zelle") zusammensetzen und ausführen lassen.
Leider habe ich bis jetzt noch keine Wég dazu gefunden, weshalb ich auch Euch um Hilfestellung ersuche.
Versucht habe ich es schon mit =indirekt(verketten(a1;a2;a3)) das Ergebnis war leider ein "#BEZUG!".
Gib es syntaktisch noch Dinge zu beachten?
Das Format für die Zellen aus denen die Formel zusammengesetzt werden soll ist "Text", das Format für die Zelle in der die Formel stehen soll ist "Standard".
Muss ich ggf. noch einen Umweg nehmen?
Vielen Dank schonmal im Voraus für Eure Hilfe.
MfG
christian
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel aus Strings zusammensetzen und berechne
25.10.2006 10:14:33
christian
Hallo!
Ich habe die Hinweise aus den anderen Thread verfolgt kann diese leider unter Excel2000 nicht anwenden. Hinzu kommt, dass ich mir auf diesem Wege einen Haufen von Namen definieren müsste.
Gibts noch weitere Ansätze?
Um es nachvollziehbarer zu machen habe ich mal Musterdateien hochgeladen.
https://www.herber.de/bbs/user/37647.xls
Bei der Datei handelt es sich um ein ZIP.Archiv, d.h. es muss erst heruntergeladen und entpackt werden.
Gruß
Christian
Anzeige
AW: Formel aus Strings zusammensetzen und berechnen
25.10.2006 10:31:04
Daniel
Hallo
meines Wissens nach kann Indirekt nicht Datei-Übergreifend eingesetzt werden.
Kleiner Workaround wäre ein Makro, daß die Formel aus den 3 Einzelwerden zu einer neuen Formel zusammensetzt. Genau das macht Folgendes Makro:
es schreibt in alle vorher selektierten Zellen eine Formel rein, die aus den 3 linken Nachbarzellen zusammengesetzt wird.
Das "=" wird automatisch ergänzt, ansonsten müssen die Inhalte der 3 Zellen zusammen die korrekte Formel ergeben.
Momentan ist es noch manuell, d.h. um eine Veränderung in den 3 Nachbarzellen wirksam werden zu lassen, müsste die Zelle selektiert werden und das Makro nochmal laufen.
Wenn aber der Aufbau deiner Datei klar ist und sich nicht mehr ändert, ließe sich auch das automatisieren.

Sub Formeln_ergänzen()
Dim Zelle As Range
For Each Zelle In Selection
Zelle.FormulaLocal = "=" & Zelle.Offset(0, -3).Value & Zelle.Offset(0, -2).Value & Zelle.Offset(0, -1).Value
Next
End Sub

Gruß, Daniel
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Excel-Formel aus Strings zusammensetzen und berechnen


Schritt-für-Schritt-Anleitung

Um eine Excel-Formel aus Text zusammenzusetzen, folge diesen Schritten:

  1. Daten vorbereiten: Stelle sicher, dass du die notwendigen Daten in drei Zellen hast, die die Bestandteile deiner Formel enthalten. Zum Beispiel:

    • Zelle A1: Speicherort
    • Zelle A2: Dateiname
    • Zelle A3: Zellenbezug
  2. Formel erstellen: Verwende die Funktion VERKETTEN, um die Teile deiner Formel zusammenzufügen. Das könnte so aussehen:

    =VERKETTEN("='\\server\pfad["; A2; ".xls]tabelle1'!"; A3)
  3. Indirekt verwenden: Um die resultierende Formel aus der verketteten Zeichenkette als Formel auszuführen, kannst du INDIREKT verwenden:

    =INDIREKT(VERKETTEN("='\\server\pfad["; A2; ".xls]tabelle1'!"; A3))
  4. Formatierung prüfen: Achte darauf, dass die Zellen, die die Strings enthalten, im Format "Text" formatiert sind, und die Zelle, die die Formel enthält, auf "Standard" eingestellt ist.


Häufige Fehler und Lösungen

  • #BEZUG!-Fehler: Dieser Fehler tritt häufig auf, wenn der Indirekt-Befehl nicht auf eine existierende Zelle verweist. Überprüfe, ob der Pfad und die Dateinamen korrekt sind.

  • Datei-übergreifende Verwendung von Indirekt: Beachte, dass INDIREKT nicht für externe Dateien funktioniert, wenn die Datei nicht geöffnet ist.

  • Falsche Formatierung: Stelle sicher, dass die Eingabezellen im korrekten Format sind. Verwende das Textformat für die Zellen, die die Strings enthalten.


Alternative Methoden

Wenn die oben genannten Methoden nicht funktionieren, kannst du auch ein VBA-Makro verwenden, um die Formel aus den Zellen zusammenzusetzen. Hier ist ein einfaches Beispiel, wie du das machen kannst:

Sub Formeln_ergänzen()
Dim Zelle As Range
For Each Zelle In Selection
    Zelle.FormulaLocal = "=" & Zelle.Offset(0, -3).Value & Zelle.Offset(0, -2).Value & Zelle.Offset(0, -1).Value
Next
End Sub

Dieses Makro nimmt die Werte aus den drei angrenzenden Zellen und setzt sie zu einer neuen Formel zusammen. Du kannst das Makro anpassen, um es für deine speziellen Anforderungen zu optimieren.


Praktische Beispiele

  • Beispiel 1: Du hast die Werte in den Zellen A1, A2 und A3 und möchtest diese zu einer Formel kombinieren, die auf eine Zelle in einer externen Datei verweist:

    =INDIREKT(VERKETTEN("='\\server\pfad["; A2; ".xls]tabelle1'!"; A3))
  • Beispiel 2: Wenn du die Zellen A1, A2, A3 und A4 hast, kannst du sie so zusammenfügen:

    Sub Beispiel()
      Dim result As String
      result = "='\\server\pfad[" & Range("A2").Value & ".xls]tabelle1'!" & Range("A3").Value
      MsgBox result
    End Sub

Tipps für Profis

  • Variablen verwenden: Wenn du mit VBA arbeitest, definiere Variablen für die Pfade und Dateinamen, um deinen Code übersichtlicher zu halten.

  • Fehlermeldungen abfangen: Füge Fehlerbehandlungsroutinen in dein VBA-Skript ein, um potenzielle Probleme beim Zusammenstellen der Formeln zu vermeiden.

  • Regelmäßige Backups: Bei der Arbeit mit großen Datenmengen, stelle sicher, dass du regelmäßig Backups deiner Excel-Dateien machst, um Datenverlust zu vermeiden.


FAQ: Häufige Fragen

1. Kann ich eine Excel-Formel aus mehreren Zellen zusammensetzen? Ja, du kannst die Funktion VERKETTEN oder TEXTVERKETTEN verwenden, um die Inhalte mehrerer Zellen zu einer Formel zusammenzufügen.

2. Warum funktioniert INDIREKT nicht mit externen Dateien? INDIREKT funktioniert nur, wenn die Zieldatei geöffnet ist. Es kann keine Verweise auf geschlossene Arbeitsmappen herstellen.

3. Wie kann ich sicherstellen, dass meine zusammengesetzte Formel korrekt ist? Überprüfe sorgfältig die Pfade und Dateinamen, und teste die Formel in einer kleineren Datenmenge, bevor du sie auf größere Datenmengen anwendest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige