Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1372to1376
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
Kopieren aus Datei
28.07.2014 01:55:32
Herbert
Hallo zusammen,
ich komme einfach nicht weiter, habe mir folgenden Vbacode kopiert, aber jetzt fehlt mir noch eine Kleinigkeit.Meine geschlossene Datei hat in Zeile 1 ein fortlaufendes Datum für ein ganzes Jahr stehen also 01.01.2014 bis 31.12.2014. Ich möchte, das wenn ich in der aktiven Tabelle ein Datum eingebe in der geschlossenen Datei danach gesucht wird und dann die Spalte von einer bestimmten Range an in die aktive Tabelle J9 kopiert wird.
kann mir da jemand helfen ?
Option Explicit
Public Function GetDataClosedWB(SourcePath As String, _
SourceFile As String, sourceSheet As String, _
SourceRange As String, TargetRange As Range) As Boolean
'Holt einen Bereich aus einer _geschlossenen_ Arbeitsmappe
'Nur in VBA zu verwenden; nicht aus einer Tabellenzelle heraus
'© t.ramel@mvps.org
' wird durch die HoleDaten aufgerufen
Dim strQuelle       As String
Dim Zeilen          As Long
Dim Spalten         As Byte
On Error GoTo InvalidInput
strQuelle = "'" & SourcePath & "[" & SourceFile & "]" & sourceSheet & "'!" & Range( _
SourceRange).Cells(1, 1).Address(0, 0)
Zeilen = Range(SourceRange).Rows.Count
Spalten = Range(SourceRange).Columns.Count
With TargetRange.Cells(1, 1).Resize(Zeilen, Spalten)
.Formula = "=IF(" & strQuelle & "="""",""""," & strQuelle & ")"
.Value = .Value
End With
GetDataClosedWB = True
Exit Function
InvalidInput:
MsgBox "Die Quelldatei oder der Quellbereich ist ungültig!", vbExclamation, "Get data from  _
closed Workbook"
GetDataClosedWB = False
End Function

Public Sub HoleDaten()
' Die Funktion arbeitet mit der obrigen GetDataClosedWB zusammen
Dim Pfad            As String
Dim Dateiname       As String
Dim Blatt           As String
Dim Bereich         As String
Dim Ziel            As Range
Pfad = "F:\"
Dateiname = "AWH.xls" ' aus welcher Datei soll er holen?
Blatt = "AWH"  ' von welcher Tabelle soll er holen?
Bereich = "G15:G50"   ' aus welchem Bereich soll er holen?
Set Ziel = ActiveSheet.Range("J9")  ' in welchen Bereich soll er kopieren? Genauer gesagt:  _
Bei welcher Zelle soll er anfangen, Datein reinzukopieren? Bsp: ActiveCell geht auch
If GetDataClosedWB(Pfad, Dateiname, Blatt, Bereich, Ziel) Then
MsgBox "Daten importiert"
End If
End Sub
Danke im Voraus
Herby

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

Betreff
Datum
Anwender
Anzeige
AW: Kopieren aus Datei
28.07.2014 19:47:42
Oberschlumpf
Hi Herbert,
du kannst nicht so ohne Weiteres nach Daten in einer geschl. Datei suchen.
Aber musst du eigtl auch nicht, überlege ich mir gerade. Du kennst den Zielbereich doch schon.
Wenn in geschl. Datei, beginnend in A1 = 01.01.2014 und entsprechend 365 Spalten weiter das Datum 31.12.2014 steht, dann musst du vor dem Auslesen aus der geschloss. Datei doch nur die "richtige" Spalte für dein gesuchtes Datum ermitteln.
Wenn du also z Bsp nach dem 05.01.2014 suchst, dann sind diese Daten in der geschloss. Datei in Spalte 5.
So könntest du dann mit Hilfe von Variablen die Trefferspalte immer dynamisch anpassen.
Aber vllt. hab ich das ja mit der 1. Zeile, mit den Datumswerten falsch verstanden.
Am besten, auch, wenn ich es richtig verstanden habe, zeig uns doch mal deine geschlossene Bsp-Datei, und erklär vllt. noch mal. was du wie wann wo warum erreichen möchtest.
Ciao
Thorsten

Anzeige
AW: Kopieren aus Datei
29.07.2014 16:31:05
Herbert
Hallo Thorsten,
vielen Dabk für die Antwort.
ja könnte gehen, aber wie setzte ich diese Variable ein und wie könnte der Code aussehen.
Natürlich kann ich die Datei hier hochladen, dauert aber etwas.
Gruß
Herby

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige