Anzeige
Archiv - Navigation
1292to1296
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

Tabelle auslesen die als Referenz dient

Tabelle auslesen die als Referenz dient
17.01.2013 09:44:21
Tüftler
Hallo Liebe Excelfreunde,
ich bräuchte Hilfe bei einem Problem, dass mich beschäftigt.
Die Sache sieht so aus, dass ich jeweils 6 Tabellen (d0 - d5) auf einem Tabellenblatt habe. Diese Tabellen stellen einen Zustand über mehrere Tage dar. Ich möchte nun die Tabelle "d0" nach vier bestimmten Werten durchsuchen. Die Zellen in denen sich diese Werte befinden sollen als Referenz für die fünf anderen Tabellen (d1 - d5) dienen und die jeweiligen Werte zurückgeben.
Da ich demnächst viele Solcher Tabellen bekomme, suche ich nun nach einer Vereinfachung bzw. Automatisierung der Arbeitsschritte.
Ich habe schon mehrere Möglichkeiten (Formeln) ausprobiert aber noch kein befriedigendes Ergebnis gefunden. Eine VBA Lösung wäre mir natürlich auch Recht.
Ich hoffe Ihr könnt mir weiterhelfen.
Zur Veranschaulichung habe ich eine Beispieldatei erstellt mit zwei verschiedenen Formatmöglichkeiten inklusive den Werten, die eingetragen werden sollen.
Vielen Dank
https://www.herber.de/bbs/user/83447.xls

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

Betreff
Datum
Anwender
Anzeige
Bahnhof owT
17.01.2013 09:55:26
Rudi

AW: Tabelle auslesen die als Referenz dient
17.01.2013 21:01:56
Christian
hallo Namenloser,
ein möglicher Weg via VBA:
Option Explicit
Sub GetData()
Dim vntDat(5)
Dim i&, j&, k&, lngC&(3), lngR&
lngR = 3            'Startzeile Quelldaten
For i = 0 To 3
lngC(i) = 19    'Ergebnis-Startspalte
Next
With ThisWorkbook.Sheets("Beispiel 2")
'alte Werte löschen
.Cells(4, 19).Resize(24, 60).ClearContents
Application.ScreenUpdating = False
'Daten einlesen
For i = 0 To UBound(vntDat, 1)
vntDat(i) = .Cells(lngR, 2).Resize(6, 10).Value
lngR = lngR + 10
Next
'Werte eintragen
For i = 1 To UBound(vntDat(0), 1)
For j = 1 To UBound(vntDat(0), 2)
Select Case vntDat(0)(i, j)
Case 1:
For k = 0 To UBound(vntDat)
.Cells(4 + k, lngC(0)) = vntDat(k)(i, j) * 1
Next
lngC(0) = lngC(0) + 1
Case 3:
For k = 0 To UBound(vntDat)
.Cells(10 + k, lngC(1)) = vntDat(k)(i, j) * 1
Next
lngC(1) = lngC(1) + 1
Case 5:
For k = 0 To UBound(vntDat)
.Cells(16 + k, lngC(2)) = vntDat(k)(i, j) * 1
Next
lngC(2) = lngC(2) + 1
Case 7:
For k = 0 To UBound(vntDat)
.Cells(22 + k, lngC(3)) = vntDat(k)(i, j) * 1
Next
lngC(3) = lngC(3) + 1
End Select
Next
Next
Application.ScreenUpdating = True
End With
End Sub
Gruß
Christian

Anzeige
AW: Tabelle auslesen die als Referenz dient
21.01.2013 07:37:02
Tüftler
Hallo Christian,
funktioniert prima. Du hast sogar an die Einfärbung der Zellen gedacht.
Vielen Dank nochmal.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige