Microsoft Excel

Herbers Excel/VBA-Archiv

Wert vergleichen und Zielspalte festlegen


Betrifft: Wert vergleichen und Zielspalte festlegen von: Marie
Geschrieben am: 04.10.2017 13:23:51

Liebe Schwarmintelligenz,

mir wurde hier schon so oft so toll geholfen! Vielleicht hat auch jetzt jemand wieder einen Tip für mich:

Ich habe eine Schleife programmiert, die momentan hier beginnt:
Start_Col_target_akt_month = 25 'Spalte 25

Jedoch ist kann die Spalte nicht fix bleiben, sondern die Schleife soll da beginnen, wo der Wert in der Zeildatei in Zeile 7 in den Spalten P - AA dem Wert in der Quelldatei aus Zelle D2 entspricht.

Man kann sich die Dateien so vorstellen:
Quelldatei:

C: Februar
D: März

Zeildatei:

P: Januar
Q: Februar
R: März
.
.
.
AA: Dezember

Dementsprechend müsste in diesem Fall die Schleife in Spalte R beginnen.

Vielen Dank für Eure Hilfe!

  

Betrifft: AW: Wert vergleichen und Zielspalte festlegen von: Robert Werner
Geschrieben am: 04.10.2017 14:17:53

Hallo Marie,

die Anweisung
X = Application.WorksheetFunction.Match(Sheets("Quelle").Range("D2"), Sheets("Ziel").Range("7:7"), 0)
schreibt in die Variable X die Spalten-Nr., in der in Zeile 7 der Ziel-Tabelle der Wert aus der Zelle D2 der Quell-Tabelle steht.

Gruß
Robert


  

Betrifft: AW: Wert vergleichen und Zielspalte festlegen von: Marie
Geschrieben am: 09.10.2017 11:29:54

Hallo Robert,

danke für deine Antwort!

Aber so ganz verstehe ich es nicht.
Das heißt auch in deiner Lösung müsste ich in jedem Monat den Spaltenindex manuell ändern?
Der Wert für X kann nämlich in den spalten P - AA stehen, je nachdem welcher Monat gerade ist.
Genau das möchte ich ja eigentlich vermeiden....

Danke und lieben Gruß


  

Betrifft: AW: Wert vergleichen und Zielspalte festlegen von: Robert Werner
Geschrieben am: 09.10.2017 14:42:21

Hallo Marie,

wie ich Deine Frage verstanden habe, hast Du in der Zelle D2 der Quelldatei einen Monat. Jetzt brauchst Du die Spalten-Nr. der Spalte in der Zieltabelle im Bereich der Spalte P bis AA, in der dieser Monat in der Zeile 7 steht. Wobei sich die Spalte ändern kann, mal steht z. B. der März in der Zelle P7, mal in der Zelle AA7 oder in einer anderen. Genau das macht mein Code.

X = Application.WorksheetFunction.Match(Sheets("Quelle").Range("D2"), Sheets("Ziel").Range("7:7"), 0)

Die Match-Funktion sucht den Wert aus der Zelle D2 der Quelltabelle (rot dargestellt) in der Zeile 7 der Zieltabelle (blau dargestellt). Als Ergebnis wird die Spalten-Nr. geliefert. Wenn also z. B. in der Zelle D2 der Quelldatei März steht, und in der Zieltabelle in Zelle P7 steht März liefert die Funktion 16, steht März dagegen in Zelle AA7 liefert die Funktion 27, also immer die entsprechende Spalten-Nr.

Gruß
Robert


  

Betrifft: AW: Wert vergleichen und Zielspalte festlegen von: Marie
Geschrieben am: 10.10.2017 16:21:28

Hallo Robert,

da hatte ich was überlesen! Super Erklärung, vielen Dank! Und es funktioniert auch einwandfrei!!

Liebe Grüße


Beiträge aus den Excel-Beispielen zum Thema "Wert vergleichen und Zielspalte festlegen"