online 1
gast (50)

/ Forum / Skripte(PHP,ASP,Perl...)

Skripte(PHP,ASP,Perl...)Skripte(PHP,ASP,Perl...)

Fragevon darrel vom 27.02.2020, 00:57 Options

vba datenimport

Hallo Leute,

ich habe folgendes Problem:
meine hauptadatei von der aus das scrit ausgeführt werden soll befindet sich im root-vz. mehrere wertpapierkurslisten im unterordner "quotes". die kurlisten haben alle unterschiedliche namen (für jedes wertpapier existiert eine eigene datei).

nun möchte ich per vba erstmal für jede datei im ordner "quotes" eine funktion ausführen und anschließend eine spalte in meine "hauptdatei" kopieren. ist das mit vba realisierbar ohne, dass sich die datei in einem fenster öffnet (da es mehrere hundert dateien sind).


Antwort schreiben

Antwort 1 von coros vom 27.02.2020, 01:16 Options

Hallo darrel,

für welches Programm benötigst Du das?

Was für eine Funktion soll den ausgeführt werden?

Was soll kopiert werden?

Bitte genauere Angaben, sonst ist Hilfe nur schwer möglich.


MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 2 von darrel vom 27.02.2020, 08:40 Options

ich möchte eine korrelationsmatrix automatisch mit den in dem ordner "quotes" runtergeladenen wp-listen (wp=wertpapier) erstellen. die listen habe ich von yahoo.finance runtergeladen und sind .csv dateien. in diesen mus ich erst den text auf die spalten aufteilen (diese funktion war gemeint). anschließend muss die "schlusskurs-spalte" in meine hauptdatei (wo die matrix enstehen und berechnet werden soll) kopiert werden. mit übergeben werden muss der dateiname (um zu wissen welche kurze zu welchem wp gehören).

Antwort 3 von kicia vom 28.02.2020, 09:39 Options

Hallo darrel,

ich fasse nochmal zusammen ( bitte korrigieren, wenn was falsch ist ):

- Es geht um Excel

- Es sollen mehrere hundert csv-Dateien geladen und je in ein Tabellenblatt geschrieben werden (Es werden also mehrere hundert Tabellenblätter erzeugt)

- Aus jedem Tabellenblatt soll eine Spalte (immer die gleiche) plus dem Dateinamen einem seperaten, bereits bestehenden Tabellenblatt hinzugefügt werden.

Frage: brauchst Du die hundert+ Tabellenblätter, oder geht es nur um die eine Spalte ? Will sagen, würde es reichen, die Daten zu laden und nur die eine Spalte zu schreiben ?

Antwort 4 von darrel vom 01.03.2020, 13:06 Options

also jedes wp hat eine eigene csv.datei mit der schlusskursspalte. die muss (+name des wp welcher aus dem dateinamen ersichtlich ist) in die hauptdatei.

Antwort 5 von kicia vom 03.03.2020, 07:13 Options

Hallo,
also, ich verstehe das so, daß die eine Spalte reicht, richtig ? Also brauchst Du die vielen Tabellenblätter gar nicht.

Leider bin ich kein Excel-spezialist, aber ich würde mal mit OpenTextFile oder OpenAsTextStream anfangen.
Dann mit ReadLine alle Zeilen in ein Array A einlesen,
mit Split die Spalten in ein Array B schreiben,
die Spalte, die Du brauchst, in das Tabellenblatt schreiben.
A kann für die nächste Datei überschrieben werden, B kann für jede Zeile überschrieben werden.

Zu OpenTextFile und OpenAsTextStream gibt es ein Beispiel in der VBA-Hilfe von Excel.

Google mal nach zB. "Excel readline".
Ein Treffer zb: Textdateien einlesen

Zellen schreiben:
Sub Blabla()
    Dim A(100) As String
    
    A(1) = "abc;def;ghi;jkl"
    A(2) = "mno;pqr;stu;vwx"
    '...
    For i = 1 To 2
        B = Split(A(i), ";")
        Worksheets("Tabelle1").Cells(i, 2) = B(3)
    Next
End Sub

Ähnliche Themen

VBA-Editor öffnen und schließen
maxim66  14.03.2008 - 98 Hits - 2 Antworten

VBA-Excel
mentosbasi  28.05.2008 - 350 Hits - 3 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 01:23:17 2026