Zum Inhalt springen

Excel Problembehandlung


Empfohlene Beiträge

Zuallererst ist es wichtig, dass du beim Import der Daten in Excel für die Spalten, in denen die Teilenummer steht, explizit "Text" als Format auswählst. Ansonsten versucht sich Excel an einer Interpretation der Daten. Das führt zum einen Dazu, dass führende Nullen wegfallen können und zum anderen dazu dass manche Inhalte als Datum oder so interpretiert werden. Im letzteren Fall werden die Inhalte effektiv umgeschrieben und werden dadurch unbrauchbar.

Dann würde ich die Orignaldaten erhalten und zwei neue Spalten einführen, über die ich dann effektiv das Matching durchführen würde.

Füge nach Spalte A zwei leere Spalten ein. Angenommen in Zelle A2 steht die Teilenummer XX.000.0000/00 oder YY.011.0111, dann schreibe in Zelle B2 die Formel: =WENN(ISTFEHLER(FINDEN("/";A2));A2;LINKS(A2;LÄNGE(A2)-3))

Das eliminiert die Schrägstriche und die folgenden Ziffern, sofern vorhanden. Willst du nur die Schrägstriche entfernen und die folgenden Ziffern erhalten, dann verwende: =WENN(ISTFEHLER(FINDEN("/";A2));A2;WECHSELN(A2;"/";""))

In Zelle C2 schreibst du dann: =WECHSELN(B2;".";"")

Das eliminiert die Punkte.

Die Formeln kannst du dann nach unten ziehen oder kopieren und für alle Teile berechnen lassen.

Das Matching würde ich dann über die Spalte C mit der Tabelle, die ohne Punkte und Striche daherkommt durchführen.

  • Thanks 1
Link zu diesem Kommentar

Also wenn ich das richtig verstanden habe hast Du zwei unterschiedliche Tabellen. In einer ist in der ersten Zeile die Zuordnung XX.000.0000/00 in der anderen YY.011.0111. Es sind Dopplungen möglich, also könnte es ein  AB.001.0001/01, ein AB.001.0001/02 und ein AB.001.0001 (die ersten beiden in der Tabelle 1 und letztere in Tabelle 2) geben? 

Jede einzelne Zeile enthält noch weitere Zellen mit Informationen.

Du möchtest die beiden Tabellen nun so sortieren, dass z.B. folgende Artikel direkt untereinander stehen:

AB.001.0001 (aus Tabelle 1)

AB.001.0001/01 (aus Tabelle 2)

AB.001.0001/02 (aus Tabelle 2)

Das sollte einfach gehen indem Du eine neues Sheet (Tabelle) einfügst und beide Tabelle genau untereinander kopierst (Ich hoffe sie haben die gleiche Anzahl/Struktur von Zellen in einer Zeile (obwohl das nicht so gravierend wäre weil man ja jede Zeile für das Sortieren komplett markieren würde. Im Zweifel sind dann halt ein paar leere Zellen in der Tabelle mit weniger Zellen pro Zeile mit kopiert.

Dann die Erste Spalte (also die mit den XX.000.0000/00 bzw. YY.011.0111 Informationen) markieren und vorsichtshalber wie Akeem bereits empfahl als Text formatieren (Spalte markieren, Rechtsklick und "Zellen formatieren", Dann erste Lasche "Zahlen" auswählen und dort TEXT anklicken).

Dann die Tabelle (also die beiden untereinanderstehenden Tabellen komplett markieren (wichtig, damit beim Sortieren nix vergessen wird und dadurch die Zeilen durcheinander gemischt werden) unter START im Menü oben die Sortierfunktion anwählen (wenn man mit schmalen Fenstern arbeitet manchmal nicht zu sehen und nur schwer zu finden, ist im Menüblock BEARBEITEN) und z.B. von A --> Z sortieren lassen.

Und nun kommt der Teil, den ich nicht ganz verstanden habe.

Kann die Struktur einer Position wie im AB Beispiel oben tatsächlich drei unterschiedliche Zeilen liefern?  Also Zeilen zum Objekt die zumindest in einigen Zellen weitere Informationen enthalten? Dann würde ich die einfach so untereinander stehen lassen.

Wenn es jedoch nur ein AB.001.0001 (aus Tabelle 1) und ein AB.001.0001/01 (aus Tabelle 2) gibt, diese die gleichen Informationen enthalten und Du die einheitlich ohne /01 darstellen möchtest um dann ggf. die doppelten löschen zu können ist vielleicht etwas einfacher als Akeems Vorschlag (wobei der dafür eleganter ist :) ) eine neue Spalte mit der Formel =TEIL(A1;1;11) in der ersten Zeile der neu eingefügten Spalte zu schreiben und diese Formal dann nach unten zu ziehen (also für die gesamte Spalte). Dabei gehe ich davon aus, dass Du die Spalte als Spalte B nach der Original Spalte eingefügt hast anderenfalls muss in der Formel das A1 durch B1 ausgetauscht werden :)  

Die Syntax ist wie folgt: TEIL ist die Funktion, die einen Teil eines Textes darstellt. A1 gibt die Zelle mit dem Originaltext an. die eins sagt an, dass das erste Zeichen der Zeichenkette als Anfang genommen werden soll (würde man dort eine 2 eintragen würde statt AB.001.0001 nur B.001.0001 dargestellt) Analog zeigt die 11 das letzte Zeichen der Kette an (Punkte zählen mit) das /01 würde dann nicht mehr dargestellt.

Hoffe, das hilft weiter. 

 

 

 

 

 

 

Link zu diesem Kommentar
  • 7 Monate später...

Hallo zusammen, ich habe eine Frage zu Excel:

Ich habe eine Tabelle mit folgender Struktur

x (Höhe [m])             f(x) (Bodentemperatur [°C])

0                         20

100                     19.5

200                      19

300                       18.7

.

.

.

2000                      11

Nun möchte ich in einer anderen Tabelle in der ich über eine Strecke ein Höhenprofil hinterlegt habe zu jeder Höhe die Bodentemperatur mit der oben gezeigten Tabelle mittels linearer Interpolation ermitteln. Da die Werte über die gesamte Tabelle stark schwanken (Ich habe schon versucht mir eine Formel einfach mittels "Trendlinie" zu basteln, das klappt aber nicht so richtig zufriedenstellend) möchte ich für die Interpolation genau die Werte heranziehen in deren Intervall die Höhe meines Profils liegt. Also z.B.: mein Wert ist 237 m dann soll für die Interpolation als x1 die 200 herangezogen werden mit f(x1) =19 und als x2 die 300 mit f(X2) =18.7 m. Ich könnte nun anfangen mit einer riesigen If Abfrage zu dem Punkt zu kommen wo im Beispiel dann herauskommt X ist größer als 200 aber kleiner als 300 also setze X1 = 200 und X2 = 300. Aber meine Hoffnung ist, dass es da etwas eleganteres gibt. Z.B. das man einfach die erste Tabelle als Matrix definiert und dann den Eingabewert an die erste Spalte übergibt und mittels eines passenden Befehls das umliegende Intervall nebst den dazu passenden f(x) Werten geliefert bekommt? Hat da wer eine Idee?

 

 

 

 

Link zu diesem Kommentar

Vielen Dank, ich glaube so komme ich weiter. Ich finde das Intervall indem ich meine Eingabezahl (im Beispiel 237) mit Abrunden ((Eingabezelle/100);0)*100 auf die nächst kleinere Zahl abrunde --> 200 und mittels Aufrunden analog die 300 finde. Dann kann ich die dazu gehörenden f(x) Werte mittels der von Dir beschriebenen Funktionen anhand meiner ersten Tabelle ermitteln. Das sollte sich dann alles in der zweiten Tabelle jeweils neben den Höhenwerten  in einer Zeile darstellen lassen, so dass dort dann der Höhenwert xtatsächlich (237m), x1, x2,  fx1 fx2 und daraus resultierend f tatsächlich erscheint.

Aber jetzt werde ich ersteinmal ins WE verschwinden :)

  

Link zu diesem Kommentar
vor 1 Minute schrieb Ma Kai:

Klingt für mich nach einem Fall für SVERWEIS/HVERWEIS?

SVERWEIS hat den bedauerlichen Mangel, dass es nur von links (Nachschlagewert) nach rechts (Ausgabewert) geht. Da ist man bei einer Kombination von INDEX und VERGLEICH wesentlich flexibler. da hier auch eine Ausgabe von rechts (Nachschlagwert) nach links (Ausgabewert) möglich ist.

Link zu diesem Kommentar
2 minutes ago, Lemeriel said:

SVERWEIS hat den bedauerlichen Mangel, dass es nur von links (Nachschlagewert) nach rechts (Ausgabewert) geht. Da ist man bei einer Kombination von INDEX und VERGLEICH wesentlich flexibler. da hier auch eine Ausgabe von rechts (Nachschlagwert) nach links (Ausgabewert) möglich ist.

Müsste ich mir anschauen, wenn ich das Problem hätte. Man kann natürlich auch die Spalten entsprechend anordnen...

Link zu diesem Kommentar

@Lemeriel: Vielen dank, hat prima geklappt.

Musste nur doch ein paar kleinere WENN Bedingungen einfügen, da Teile der Originaltabelle doch nicht so gleichmäßig  verlief wie im Beispiel oben, und auch um Werte abzufangen bei denen sich fürs Abrunden und Aufrunden der gleiche Wert ergab, aber ansonsten klappte das mit der Kombination aus x0 = Abrunden (Wert / 100 ) *100 bzw. x1 = Aufrunden (Wert / 100 ) *100 und sich dafür dann mittels Index und Vergleich die entsprechenden f(x0) f(x1) aus der Tabelle zu fischen.

Da die Ursprungstabelle auch unabhängig von meiner eigentlichen Tabelle ist, konnte ich die Matrix auch mittels F4 fixieren und die benötigten Werte alle schön nebeneinander anordnen und dann entlang der x Werte der zweiten Tabelle einfach herunterziehen.

x <-- (Vorhandener Wert in meiner neuen Tabelle) , x0, x1, f(x0), f(x1) f(x) <-- letztere der gesuchte Wert, linear interpoliert  

  • Thanks 1
Link zu diesem Kommentar
  • 2 Jahre später...

Hallo zusammen,

eine Arbeitskollegin bekommt beim Öffnen unserer Zeiterfassungsdateien seit ein paar Tagen immer einen leeren Namensmanager angezeigt und die verwendeten Formeln zeigen entsprechende Fehlermeldungen.

Sie ist diejenige die die Excel Datei ursprünglich erstellt hat und für jeden Mitarbeiter anpasst bzw. nun die Dateien für das kommende Jahr vorbereiten möchte. Die einzelnen Daten liegen auf einem gemeinsamen Server und wenn ich z.B. meine Zeiterfassungsdatei öffne ist alles wie es sein soll. Dann habe ich die Datei unter einem anderen Namen abgespeichert. kann sie ebenfalls problemlos öffnen, und wenn die Kollegin diese Datei  dann öffnet sind alle Namen futsch (Ihr Excel braucht auch ungewöhnlich lang zum Öffnen und stürzt auch häuf ab, wenn man dann ohne auf die Datei zu klicken Excel so öffnet erscheint die Datei die abgestürzt war direkt (was auch merkwürdig ist und normalerweise so nicht passiert). Legt sie eine neue Datei an, erzeugt ein paar Namen, speichert sie ab und öffnet sie wieder ist auch alles normal.

Hat wer eine Idee woran das liegen könnte oder was man alles checken sollte um den Fehler zu beheben?

 

Link zu diesem Kommentar
vor 2 Stunden schrieb Neq:

Hat wer eine Idee woran das liegen könnte oder was man alles checken sollte um den Fehler zu beheben?

Ordnerzugriffsrechte? Woher käme denn normalerweise die Befüllung des "Namensmanagers" (was wahrscheinlich irgendeine Form von VBA-Makro ist)?

Link zu diesem Kommentar
vor 43 Minuten schrieb Ma Kai:

Ordnerzugriffsrechte? Woher käme denn normalerweise die Befüllung des "Namensmanagers" (was wahrscheinlich irgendeine Form von VBA-Makro ist)?

Ja, das ist ja häufig ein Problem, nur da haben wir eigentlich nichts geändert, aber auf jeden Fall eine Prüfung wert.

vor 5 Minuten schrieb Widukind:

die letzte funktionierende Version aus dem Backup wiederherstellen?

Ja, werde ich morgen mal die IT Kollegen bitten, dass vorzunehmen. Dank Euch für die Tips :thumbs:

  • Like 1
Link zu diesem Kommentar
  • 1 Monat später...

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...