818 Aufrufe
Gefragt in Tabellenkalkulation von
Hallo zusammen,

ich habe ein Problem mit VBA, das ich alleine nicht gelost bekomme
und erhoffe mir daher Hilfe von Eurer Seite! Ich habe beim
Durchstöbern der Foren zwar eine Lösung für mein Problem gefunden,
musste aber feststellen, dass diese aufgrund der Verwendung von
"Filesearch" nicht mehr in Frage kommt.

Nun zu meinem Problem:
Grundsätzlich geht es darum, dass ich in einem Ordner mehrere
identisch aufgebaute Excel-Dateien habe und ausgewählte Zellen
mehrerer Blätter dieser Excel-Dateien in eine weitere Excel-Datei, die
als Datenbank fungieren soll, übertragen möchte. Die Daten eines
Excel-Sheets sollen in der Datenbank jeweils eine Zeile belegen. Der
Einfachheit halber befindet sich die Datenbank selbst nicht in diesem
Ordner. D. h. dass beispielsweise die Zellen A4 und C10 des 1. Blattes
(Kostenkalkulation) sowie die Zellen B2 und F9 des 2. Blattes
(Preisfindung) von mehreren Excel-Dateien in jeweils vier Zellen einer
Zeile der Datenbank übertragen werden sollen.

Da die Aktion nicht nur einmal durchgeführt werden soll, sondern die
Datenbank von Zeit zu Zeit aktualisiert werden muss, sollte die
Datenübertragung von der Datenbank initiiert sein. Dafür können ja
entweder die Daten komplett gelöscht und alle neu geladen werden
oder eine Abfrage eingebaut werden, ob die Daten der gewissen Excel-
Datei bereits enthalten sind.

Würde mich über eure Hilfe freuen

Danke im Voraus
Gruß

1 Antwort

0 Punkte
Beantwortet von
das geht in etwa so:

Do While mudtFiles(lngIndex1).dmtDateCreate > vntTemp
lngIndex1 = lngIndex1 + 1
Loop
Do While vntTemp > mudtFiles(lngIndex2).dmtDateCreate
lngIndex2 = lngIndex2 - 1
Loop
End If
End Select
If lngIndex1 <= lngIndex2 Then
udtBuffer = mudtFiles(lngIndex1)
mudtFiles(lngIndex1) = mudtFiles(lngIndex2)
mudtFiles(lngIndex2) = udtBuffer
lngIndex1 = lngIndex1 + 1
lngIndex2 = lngIndex2 - 1
End If
Loop Until lngIndex1 > lngIndex2
If lngLBorder < lngIndex2 Then Call prcSort(lngLBorder, lngIndex2, enmSortBy, enmSortOrder)
If lngIndex1 < lngUBorder Then Call prcSort(lngIndex1, lngUBorder, enmSortBy, enmSortOrder)
End Sub



LG
...