| Autor |
Beitrag |
mexx
      
Beiträge: 1183
|
Verfasst: Mo 21.08.06 08:59
Hallo,
beim letzten Mal wurde mir hier super in Bezug auf Excel geholfen. Deswegen trage ich mein nächsten Anliegen auch mal vor.
Stellt euch eine Tabelle vor, die einen Spalte Bezeichnung hat und eine Bezeichnungsnummer zu der Bezeichnung. Wenn ich nun in einer ganz anderen Tabelle die Bezeichnungsnummer eingebe, soll in der Zelle daneben, die Bezeichnung zu dieser Nummer stehen, welche aus der ersten Tabelle ausgelesen werden soll.
Beispiel für 1.Tabelle
Quelltext 1: 2: 3: 4: 5:
| Bezeichnung Nummer Fahrrad fahren 1 Fahrrad putzen 2 Auto fahren 3 Auto putzen 4 |
Beispiel für 2.Tabelle
Quelltext 1: 2: 3:
| Tagesplan Tätigkeit Bezeichnung 1h 1 Fahrrad fahren 9h 4 Auto putzen |
Die Bezeichnung aus der 2.Tabelle soll automatisch gefüllt werden, wenn die Tätigkeitsnummer geändert wird.
Da die Tabelle, welche die Bezeichnungen und Bezeichnungsnummern enthält sehr groß ist, wird eine einfache WENN-Bedingung sehr kompliziert. Aber vielleicht gibt es eine Funktion, von der ich noch nix weis.
Vielen Dank!
_________________ Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
|
|
Lannes
      
Beiträge: 2352
Erhaltene Danke: 4
Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
|
Verfasst: Mo 21.08.06 09:49
Hallo,
da gibt es mehrere Möglichkeiten im Bereich der Matrix-Funktionen, u.a.
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| | | A | B | --------------------------------- | 1 | Bezeichnung | 2 | 1 Fahrrad fahren | 3 | 2 Fahrrad putzen | 4 | 3 Auto fahren | 5 | 4 Auto putzen | 6 | | 7 | 1 =WAHL(A7;B2;B3;B4;B5) //bis maximal 29 Einträge | 8 | | 9 | 1 =SVERWEIS(A9;A2:B5;2) | 10 | | 11 | 1 =INDEX(B2:B5;A11;1) |
_________________ MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mo 21.08.06 10:04
Eines davon geht bestimmt, aber die Funktionieren alle nicht so wie ich will. Das ist ganz schön verwirrend.
_________________ Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
|
|
Lannes
      
Beiträge: 2352
Erhaltene Danke: 4
Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
|
Verfasst: Mo 21.08.06 10:15
Hallo,
mexx hat folgendes geschrieben: | | Eines davon geht bestimmt, aber die Funktionieren alle nicht so wie ich will. Das ist ganz schön verwirrend. |
die funktionieren alle, hast du die Adresse des Matrix-Bereichs vor dem kopieren auf absolut gesetzt?
z.B.
Quelltext 1: 2:
| =INDEX(B2:B5;A11;1) //relative Bezüge =INDEX($B$2:$B$5;A11;1) //absolute Bezüge |
_________________ MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mo 21.08.06 10:27
Lass uns mal auf den Befehl Index genauer eingehen, denn die Hilfe von Excel ist mir keine große Hilfe.
Index(Bezeichnung,Bezeichnungsschlüssel,Abfragespalte in Tabelle)
??????
_________________ Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
|
|
Lannes
      
Beiträge: 2352
Erhaltene Danke: 4
Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
|
Verfasst: Mo 21.08.06 11:27
Hallo,
für die Funktion INDEX braucht man nur eine Spalte:
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| | | A | B | --------------------------------------------- | 1 |Fahrrad fahren | 2 |Fahrrad putzen | 3 |Auto fahren | 4 |Auto putzen | 5 | | 6 | | 7 | 1 =INDEX(A2:A4;A7;1) |
Index(Bezeichnung,Bezeichnungsschlüssel,Abfragespalte in Tabelle)
Bezeichnung >> Der Bereich aus dem die Bezeichnung geholt wird A2:A4
Bezeichnungsschlüssel >> ist die Zelle in der der Zeilen-Index steht A7
Abfragespalte in Tabelle >> eine 1, eben die Spalte 1, man kann auch mehrere Spalten mit INDEX auswerten, dann den Bereich vergrößern und die entsprechende Spalte auswählen.
Stell Dir das mal wie ein Array in Delphi vor:
Delphi-Quelltext 1: 2: 3: 4:
| var Bezeichnung : Array [0..3] of String; Bezeichnungsschluessel : Integer; showmessage(Bezeichnung[Bezeichnungsschluessel]); |
Bei mehreren Spalten dann halt ein zweidimensionales Array
Delphi-Quelltext 1: 2: 3: 4:
| var Bezeichnung : Array [0..3,0..1] of String; Bezeichnungsschluessel,Abfragespalte : Integer; showmessage(Bezeichnung[Bezeichnungsschluessel,Abfragespalte]); |
_________________ MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mo 21.08.06 11:51
Ja, dann hab ich das eigentlich verstanden, aber es geht nicht.
=INDEX(Erläuterungen!A15:A32;Erläuterungen!B15:B32;F6:F39)
Erläuterung! ist eine andere Seite, die die Zuorndung enthält.
A15-A32 enthält die Bezeichnung
B15-B32 enthält den Bezeichnungsschlüssel
F6-F39 ist die Spalte, wo er den Bezeichnungsschlüssel prüft, der vom Benutzer eingetragen wird.
Bei mir steht aber #WERT da.
_________________ Das Unsympathische an den Computern ist, dass sie nur ja oder nein sagen können, aber nicht vielleicht.
|
|
Lannes
      
Beiträge: 2352
Erhaltene Danke: 4
Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
|
Verfasst: Mo 21.08.06 13:51
Hallo,
Lannes hat folgendes geschrieben: |
für die Funktion INDEX braucht man nur eine Spalte... |
Schau Dir mal genau das Beispiel im Anhang an und vergleich das mal mit dem Beispiel zu SVERWEIS, ebenfalls in der Datei.
Einloggen, um Attachments anzusehen!
_________________ MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
|
|
|