Office: (Office 2010) Externe Mappe täglich importieren und aktualisieren

Helfe beim Thema Externe Mappe täglich importieren und aktualisieren in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hi irgendwas geht nicht das Makro findet das Datum nicht trotz korrekter Eingabe ? ich gebe ein 02.07.2015 es kommt immer das Datum wurde nicht... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von derberg222, 6. Juli 2015.

  1. derberg222 Erfahrener User

    Externe Mappe täglich importieren und aktualisieren


    Hi

    irgendwas geht nicht das Makro findet das Datum nicht trotz korrekter Eingabe ?

    ich gebe ein 02.07.2015 es kommt immer das Datum wurde nicht gefunden.

    Hast du ne Idee ?
     
    derberg222, 14. Juli 2015
    #16
  2. derberg222 Erfahrener User
    So wie es aussieht sucht die Programmierung das Datum in der falschen Spalte ? Ich dacht lt Code sucht es nach Ueberschrift diese habe ich angepasst im Code
     
    derberg222, 14. Juli 2015
    #17
  3. fette Elfe Erfahrener User
    Hallo derberg222,

    ja, die Datumsspalte wird anhand der Spaltenüberschrift gesucht.
    Diese hattest Du ja in Deiner bereitgestellten Datei erwähnt:
    Meine Codezeile dazu sieht so aus:
    Code:
    If .Cells(1, loCounter) = "LAST_SOL_DATE" Then
    Was war daran falsch? Und wie hast Du es jetzt angepasst?

    Immerhin scheinen meine Kommentare Dir ja geholfen zu haben den richtige Befehl zu identifizieren. ;O)

    Und wie sieht es mit dem Rest aus?
    Vor allem, klappt das Löschen der externen Verbindungen? Und macht das überhaupt Sinn, da die Quelldatei ja ohne speichern geschlossen wird?
     
    fette Elfe, 14. Juli 2015
    #18
  4. derberg222 Erfahrener User

    Externe Mappe täglich importieren und aktualisieren

    Hi

    Ja soweit alles recht schlüssig

    ich habe die Zeile angepasst :

    If .Cells(1, loCounter) = "FIRST_RCT_DATE" Then


    Ich habe dann in dieser Spalte folgendes stehen :

    [TABLE="width: 117"]
    <colgroup><col></colgroup><tbody>[TR]
    [TD="align: right"]01.07.2015 08:03[/TD]
    [/TR]
    [TR]
    [TD="align: right"]01.07.2015 08:06[/TD]
    [/TR]
    [TR]
    [TD="align: right"]01.07.2015 08:38[/TD]
    [/TR]
    [TR]
    [TD="align: right"]01.07.2015 08:43

    [/TD]
    [/TR]
    </tbody>[/TABLE]
    Ich habe geshehen du hast den Befehl gesetzt die ersten 10 Zeichen mit der Datumseingabe abzugleichen.

    Jetzt gebe ich nachdem ich den Inhalt nach Öffnen der Datei aktiviert habe, das Datum 01.07.2015 ein und es kommt die Meldung :

    Datum nicht gefunden und die erneute Entscheidung.

    Daher meine Frage wo da der Fehler hängen könnte.


    Das mit der externen Verbindung der Quelldatei scheint zu funktionieren und ich bekomme nur Werte in die Zieldatei.
    Ja das macht schon Sinn.

    Vielen Dank
     
    derberg222, 15. Juli 2015
    #19
  5. derberg222 Erfahrener User
    Hi Wenn Es OK ist pack ich jetzt gleich noch etwas hintendran :-)

    Ich habe noch 2 weitere Funktionen die sicher über VBA umsetzbar sind aber für mich schier unmöglich :-) aber nur so lern ichs :-)

    1. Ich habe aus 3 Filtern einer PIVOT einen Wert X jetzt möchte ich das aus diesem Wert nur die Anzahl der Zellen angezeigt wird die mit dem Kriterium "Spalte" "TIME" also z.B Spalte S aus Rohdaten grösser als 240 sind.

    2. Ich habe 7 Pivotergebnisse und möchte diese automatisch in weitere Reiter übergeben, das Problem sie sollen als NUR WERTE in die Zielzelle geschrieben werden nicht als Verweis ? Geht das ?
     
    derberg222, 15. Juli 2015
    #20
  6. fette Elfe Erfahrener User
    Hallo derberg222,
    kann ich so nicht nachvollziehen. Habe es gerade mit Deinen geänderten Bedingungen und Deiner weiter oben hochgeladenen Quelldatei ausprobiert, und alles klappt.

    Lade bitte mal eine aktuelle Quell- und Deine aktuelle Zieldatei hoch, und teste vorher, ob der Fehler wirklich auftritt.
    Dann kann ich mir das mal anschauen und versuchen nachzuvollziehen.



    Richtige Einstellung, genauso hab ichs auch gelernt. ;O)



    Ich vermute einfach mal, das das schon irgendwie gehen wird.
    Aber wie weiter oben bereits geschrieben, habe ich von Pivot-Tabellen keinen Plan.
    Gib mir die Original-Datei inkl. der Pivot, und ich schau es mir mal an.

    Ansonsten meldet sich ja vielleicht auch jemand, der sich mit sowas auskennt?
     
    fette Elfe, 15. Juli 2015
    #21
  7. derberg222 Erfahrener User
    die Datei ist zu gross gibt es eine Möglichkeit dir diese zu schicken ?
     
    derberg222, 16. Juli 2015
    #22
  8. fette Elfe Erfahrener User

    Externe Mappe täglich importieren und aktualisieren

    Hallo derberg222,

    also zum einen müsste es "die Dateien" heissen, denn ich brauche beide. ;O)
    Und dann glaube ich nicht, dass es nicht irgendwie möglich ist die Dateien durch Löschen nicht benötigter Blätter und eines Großteils der (vermutlich vielen) Datensätze auf maximal 100 kb zu bekommen.
    Sollte es tatsächlich absolut nicht zu schaffen sein, dann lade die Dateien ausnahmsweise woanders hoch (bevorzugt bei Dropbox) und schick mir die Downloadlinks in einer PN. Dann schau ich ob ich die Dateien nicht so klein bekomme, dass ich sie hier im Forum hochladen kann.
     
    fette Elfe, 16. Juli 2015
    #23
  9. derberg222 Erfahrener User
    Hier einmal die Rohdaten
     
    derberg222, 17. Juli 2015
    #24
  10. derberg222 Erfahrener User
    UND die Zieldatei
     
    derberg222, 17. Juli 2015
    #25
  11. fette Elfe Erfahrener User
    Hallo derberg222,

    was soll ich mit der zweiten Datei (Zieldatei) anfangen?
    Da ist das Makro nicht enthalten.
    Ich wollte sowohl Quell- als auch Zieldatei im Original, damit ich nach dem Fehler suchen kann.
    Wenn ich den Code selber da reinsetze ist das nicht original.
    So wird das ganze langsam echt ermüdend.

    Bezüglich Deiner Pivot-Geschichte bist Du ja bei Silex in guten Händen.
     
    fette Elfe, 19. Juli 2015
    #26
  12. derberg222 Erfahrener User
    Hi Sorry

    aber als xlsm ist sie zu gross

    Das Problem ist eigentlich nur das alle Tage importiert werden, nicht nur beispielsweise der 01.07.2015 wenn ich ihn als Import definiere in der Auswahlmaske.

    hier der Code :

    Option Explicit


    ' !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    ' Im "Private Sub Workbook_Open()" muss der Dateipfad der täglichen Rohdatendatei, bzw. ggf. die Dateiendung, angepasst werden !!!!
    ' !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


    ' !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    ' Im "Public Sub DatenbereichErmitteln()" muss die Spaltenüberschrift der Datumsspalte angepasst werden, falls diese sich ändert !!
    ' !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


    Dim byWert As Byte ' numerische Variable > welcher Knopf wurde in der Messagebox gedrückt
    Dim strQuellPfad As String ' Textvariable für den Dateipfad der Quelldatei
    Dim strQuellDatei As String ' Textvariable für den Dateinamen inkl. Endung der Quelldatei
    Dim strDatum As String ' Textvariable die das Datum der Benutzereingabe aufnimmt
    Dim loFirstRow As Long ' numerische Variable die die erste Zeile des zu kopierenden Datenbereichs angibt
    Dim loLastRow As Long ' numerische Variable die die letzte Zeile des zu kopierenden Datenbereichs angibt
    Dim loLastCol As Long ' numerische Variable die die letzte benutzte Spalte angibt
    Dim blnDatFound As Boolean ' boolsche Variable die angibt ob die Datumsspalte in der Quelldatei gefunden wurde
    Dim blnImport As Boolean ' boolsche Variable die angibt, ob der Import durchgeführt wurde
    Dim blnAbbruch As Boolean ' boolsche Variable die angibt, ob der Import abgebrochen werden soll
    Dim rgUsedRange As Range ' gibt den Bereich an der sortiert wird, und später den Bereich der kopiert wird
    Dim conExtDatVerb As Connections


    Private Sub Workbook_Open()


    '##############################################################################
    ' Dateipfad an Variable übergeben > !!!!!! muss manuell angepasst werden !!!!!!
    strQuellPfad = "Y:\Rohdaten.xlsx"
    '##############################################################################

    byWert = MsgBox("Sollen die aktuellen Rohdaten importiert werden? ACHTUNG es darf kein Filter in der Quelldatei gesetzt sein", 4, "Auswahl") ' Messagebox mit Ja-Nein-Knöpfen, die Benutzerauswahl wird an die Variable übergeben
    If byWert = 6 Then ' es wurde "Ja" gedrückt
    Call InputBoxDatum ' Aufruf der Routine für die Datumseingabe
    If DateiGeoeffnet(strQuellPfad) = True Then Call QuelldateiSchliessen ' falls durch Abbruch die Quelldatei noch offen geblieben ist, diese schliessen
    Exit Sub ' Routine beenden (in diesem Fall das komplette Makro)
    ElseIf byWert = 7 Then ' es wurde "Nein" gedrückt
    MsgBox "Abbruch durch Benutzer." & vbNewLine & "Es wurden keine Daten importiert.", vbOKOnly, "Abbruch" ' Info an Benutzer
    Exit Sub ' Routine beenden (in diesem Fall das komplette Makro)
    End If

    End Sub


    Public Sub InputBoxDatum()


    Dim varInputBoxDatum As Variant ' unbestimmte Variable > Eingabe in InputBox > nach welchem Datum soll gesucht und gefiltert werden?


    varInputBoxDatum = Application.InputBox("Bitte das Datum, nach dem die Importdaten gefiltert werden sollen, in einem der folgenden Formate eingeben:" _
    & vbNewLine & vbNewLine & "01.01.2015 01-01-2015 01/01/2015" & vbNewLine & vbNewLine, "Datumsfilter", , , , , , 2) ' Inputbox für die Datumseingabe, anhand der Benutzereingabe werden nur Daten des eingegebenen Datums importiert
    If varInputBoxDatum = False Then ' wenn "abbrechen" gedrückt wurde
    MsgBox "Abbruch durch Benutzer." & vbNewLine & "Es wurden keine Daten importiert.", vbOKOnly, "Abbruch" ' Info an Benutzer
    blnAbbruch = True ' Datenimport wurde durch Benutzer abgebrochen
    Exit Sub ' Routine beenden
    Else
    strDatum = varInputBoxDatum ' Umwandlung des Rückgabewertes der Inputbox in einen String
    If (strDatum = "") Or (Not Len(strDatum) = 10) Or (Not IsDate(strDatum)) Then ' wenn keine Eingabe gemacht wurde, oder kein Datum erkannt wird
    MsgBox "Sie haben kein gültiges Datum eingegeben.", vbOKOnly, "Information" ' Info an Benutzer
    Call InputBoxDatum ' erneuter Aufruf der Routine für die Datumseingabe
    Exit Sub ' Routine beenden
    Else
    Call TaeglicherDatenimport ' Aufruf der Routine für den Datenimport
    Exit Sub ' Routine beenden
    End If
    End If


    End Sub


    Public Sub TaeglicherDatenimport()


    blnAbbruch = False
    blnImport = False
    strQuellDatei = Right(strQuellPfad, InStr(1, StrReverse(strQuellPfad), "\") - 1) ' Dateiname inkl. Endung an Variable übergeben, passt sich automatisch an


    If Dir(strQuellPfad) <> "" Then ' Prüfung ob Dateipfad existiert
    If DateiGeoeffnet(strQuellPfad) = False Then ' wenn Quelldatei aktuell noch nicht geöffnet ist > wird in Function DateiGeoeffnet() überprüft
    Workbooks.Open strQuellPfad ' Quelldatei öffnen
    Call ExterneDatenVerbindungenLöschen ' externe Datenverbindungen der Quelldatei löschen
    Call DatenbereichErmitteln ' Aufruf der Routine > anhand der Datumseingabe werden die zu kopierenden Daten ermittelt
    If blnAbbruch = True Then Exit Sub ' Routine abbrechen wenn derDatenimport durch Benutzer abgebrochen wurde
    If blnImport = True Then Exit Sub ' Routine abbrechen wenn der Import bereits durchgeführt wurde (nötig durch die rekursiven Aufrufe)
    ThisWorkbook.Worksheets(1).Cells.Delete ' alte Daten im Zielblatt löschen
    Workbooks(strQuellDatei).Worksheets(1).Rows("1:1").Copy Destination:=ThisWorkbook.Worksheets(1).Rows("1:1") ' Überschriften kopieren und einfügen
    rgUsedRange.Copy Destination:=ThisWorkbook.Worksheets(1).Cells(2, 1) ' Daten kopieren und einfügen
    ThisWorkbook.Worksheets(1).UsedRange.Columns.AutoFit ' Spaltenbreite im Zielblatt automatisch einstellen
    blnImport = True ' Import wurde durchgeführt
    Call QuelldateiSchliessen ' Aufruf der Routine zum Schliessen der Quelldatei
    MsgBox "Datenimport abgeschlossen." ' Info an Benutzer
    Exit Sub ' Routine beenden
    Else
    byWert = MsgBox("Die Quell-Datei ist bereits geöffnet." & vbNewLine & "Soll sie geschlossen und mit dem Vorgang fortgefahren werden?", 4, "Achtung") ' Messagebox mit Ja-Nein-Knöpfen, die Benutzerauswahl wird an die Variable übergeben
    If byWert = 6 Then ' es wurde "Ja" gedrückt
    Call QuelldateiSchliessen ' Aufruf der Routine zum Schliessen der Quelldatei
    Call TaeglicherDatenimport ' erneuter Aufruf der Routine für den Datenimport
    Exit Sub ' Routine beenden
    ElseIf byWert = 7 Then ' es wurde "Nein" gedrückt
    MsgBox "Abbruch durch Benutzer." & vbNewLine & "Es wurden keine Daten importiert." ' Info an Benutzer
    blnAbbruch = True ' Datenimport wurde durch Benutzer abgebrochen
    Exit Sub ' Routine beenden
    End If
    End If
    Else
    MsgBox "Der voreingestellte Dateipfad existiert nicht." ' Fehlermeldung bei falschem Dateipfad
    blnAbbruch = True ' Datenimport wurde durch Fehler abgebrochen
    Exit Sub ' Routine beenden
    End If

    End Sub


    Public Sub DatenbereichErmitteln()


    Dim loDatCol As Long ' numerische Variable > gibt die Spaltennummer wieder, in der in jeder Zeile das Datum finden ist
    Dim loCounter As Long ' numerische Variable > Zähler in Schleife
    Dim rgSortRange As Range ' gibt den Bereich an nach dem sortiert wird
    Dim strCellDat As String ' Textvariable die das in der jeweiligen Zelle eingetragene Datum aufnimmt


    blnDatFound = False
    loFirstRow = 0


    With Workbooks(strQuellDatei).Worksheets(1)
    loLastCol = .Cells(1, .Columns.Count).End(xlToLeft).Column ' ermittelt die letzte benutzte Spalte in Zeile 1
    loLastRow = .Cells(.Rows.Count, 1).End(xlUp).Row ' ermittelt die letzte benutzte Zeile in Spalte A

    For loCounter = 1 To loLastCol ' Schleife, die alle Spalten bis zur letzten benutzten durchläuft
    '################################################################################
    ' Spaltenüberschrift der Datumsspalte, muss angepasst werden wenn sie sich ändert
    If .Cells(1, loCounter) = "LAST_SOL_DATE" Then ' wenn die Datumsspalte anhand der Überschrift gefunden wurde
    '################################################################################
    loDatCol = loCounter ' Spaltennummer an Variable übergeben
    blnDatFound = True ' Datumsspalte wurde gefunden
    Exit For ' Schleife beenden
    ElseIf loCounter = loLastCol Then ' wenn die letzte benutzte Spalte erreicht wurde, ohne die gesuchte Überschrift zu finden
    blnDatFound = False ' Datumsspalte wurde nicht gefunden
    Exit For ' Schleife beenden
    End If
    Next loCounter

    If blnDatFound = True Then ' wenn die Datumsspalte gefunden wurde
    Set rgSortRange = .Range(.Cells(2, loDatCol), .Cells(loLastRow, loDatCol)) ' definiert den Bereich nachdem sortiert werden soll
    Set rgUsedRange = .Range(.Cells(2, 1), .Cells(loLastRow, loLastCol)) ' definiert den Bereich der sortiert werden soll
    With .Sort ' sortiert die Liste nach der Datumsspalte
    .SortFields.Clear
    .SortFields.Add Key:=rgSortRange, _
    SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    .SetRange rgUsedRange
    .Header = xlNo
    .MatchCase = False
    .Orientation = xlTopToBottom
    .SortMethod = xlPinYin
    .Apply
    End With

    For loCounter = 2 To loLastCol ' Schleife > durchläuft alle Zeilen der Liste, vergleicht das eingetragene mit dem gesuchten Datum
    strCellDat = Trim(.Cells(loCounter, loDatCol)) ' Zellwert an Variable übergeben und gleichzeitig Leerzeichen am Anfang und Ende entfernen
    If Len(strCellDat) > 10 Then strCellDat = Left(strCellDat, 10) ' wenn der Text länger als 10 Zeichen ist, nur die ersten 10 behalten
    If IsDate(strCellDat) Then ' wenn ein Datum erkannt wurde
    If loFirstRow = 0 Then ' wenn der Beginn des gesuchten Datumsbereiches noch nicht gefunden wurde
    If CDate(strDatum) = CDate(strCellDat) Then ' wenn das Zelldatum mit dem gesuchten Datum übereinstimmt
    loFirstRow = loCounter ' Beginn des Datumsbereiches als Zeilennummer an Variable übergeben
    End If
    Else ' wenn der Beginn des gesuchten Datumsbereiches bereits gefunden wurde
    If Not CDate(strDatum) = CDate(strCellDat) Then ' wenn das Zelldatum nicht mit dem gesuchten Datum übereinstimmt
    loLastRow = loCounter - 1 ' Ende des Datumsbereiches als Zeilennummer an Variable übergeben
    Exit For ' Schleife beenden
    End If
    End If
    End If
    Next loCounter

    If loFirstRow = 0 Then ' wenn das gesuchte Datum nicht gefunden wurde
    byWert = MsgBox("Das gesuchte Datum wurde nicht gefunden." & vbNewLine & vbNewLine & _
    "Bitte wählen Sie:" & vbNewLine & _
    "- alle Daten importieren" & " " & """JA""" & vbNewLine & _
    "- neues Datum eingeben" & " " & """Nein""" & vbNewLine & _
    "- den Import abbrechen" & " " & """Abbrechen""", 3, "Datumsfehler") ' Messagebox mit Ja-Nein-Abbrechen-Knöpfen, die Benutzerauswahl wird an die Variable übergeben
    If byWert = 6 Then ' es wurde "Ja" gedrückt
    Set rgUsedRange = .Range(.Cells(2, 1), .Cells(loLastRow, loLastCol)) ' definiert den Bereich der kopiert werden soll
    Exit Sub ' Routine beenden
    ElseIf byWert = 7 Then ' es wurde "Nein" gedrückt
    Call InputBoxDatum ' erneuter Aufruf der Routine für die Datumseingabe
    Exit Sub ' Routine beenden
    ElseIf byWert = 2 Then ' es wurde "Abbrechen" gedrückt
    MsgBox "Abbruch durch Benutzer." & vbNewLine & "Es wurden keine Daten importiert." ' Info an Benutzer
    blnAbbruch = True ' Datenimport wurde durch Benutzer abgebrochen
    Exit Sub ' Routine beenden
    End If
    Else
    Set rgUsedRange = .Range(.Cells(loFirstRow, 1), .Cells(loLastRow, loLastCol)) ' definiert den Bereich der kopiert werden soll
    Exit Sub ' Routine beenden
    End If

    Else ' wenn die Datumsspalte nicht gefunden wurde
    MsgBox "Die gesuchte Spaltenüberschrift:" & vbNewLine & """LAST_SOL_DATE""" & vbNewLine & "konnte nicht gefunden werden." & vbNewLine & "Der Datenimport wird abgebrochen.", vbOKOnly, "Abbruch" ' Info an Benutzer
    blnAbbruch = True ' Datenimport wurde durch Fehler abgebrochen
    Exit Sub ' Routine beenden
    End If

    End With


    End Sub


    Public Sub QuelldateiSchliessen()


    Dim loCurrDsplAlert As Long ' numerische Variable, die die Systemeinstellung aufnimmt, ob Warnmeldungen angezeigt werden


    loCurrDsplAlert = Application.DisplayAlerts ' speichert die Einstellung ob Warnmeldungen angezeigt werden in Variable
    On Error GoTo ErrorHandler ' Start der Fehlerbehandlung
    Application.DisplayAlerts = False ' Warnmeldungen ausschalten
    Workbooks(strQuellDatei).Close SaveChanges:=False ' Quelldatei ohne Speichern schliessen
    Application.DisplayAlerts = loCurrDsplAlert ' Anzeige der Warnmeldungen auf ursprünglichen Wert zurücksetzen
    On Error GoTo 0 ' Ende der Fehlerbehandlung
    Exit Sub ' Routine beenden, damit die Fehlerbehandlung nur bei Aufruf durchlaufen wird

    ErrorHandler: ' Fehlerbehandlung
    Application.DisplayAlerts = loCurrDsplAlert ' Anzeige der Warnmeldungen auf ursprünglichen Wert zurücksetzen
    On Error GoTo 0 ' Fehlerbehandlung auf Standart zurücksetzen


    End Sub


    Public Sub ExterneDatenVerbindungenLöschen()


    Dim loCounter As Long ' numerische Variable > Zähler in Schleife


    With Workbooks(strQuellDatei)
    For loCounter = .Connections.Count To 1 Step -1
    .Connections(loCounter).Delete
    Next loCounter
    End With


    End Sub


    Private Function DateiGeoeffnet(DerPfad As String) As Boolean
    ' diese Funktion prüft, ob die Quelldatei eventuell bereits geöffnet ist
    ' bei shared Workbooks, schreibgeschützten Mappen o.ä.. kann dies eventuell auch ein "Falsch" zurückgeben
    On Error Resume Next ' wenn ein Fehler auftritt, nächste Anweisung ausführen (Fehler überspringen)
    Open DerPfad For Binary Access Read Lock Read As #1 ' Quelldatei öffnen
    Close #1 ' Quelldatei schliessen
    If Err.Number <> 0 Then ' Prüfen ob ein Fehler aufgetreten ist
    DateiGeoeffnet = True ' Wertezuweisung
    Err.Clear ' Fehlerspeicher löschen
    End If
    On Error GoTo 0 ' Fehlerbehandlung auf Standart zurücksetzen
    End Function


    ' Notizen:
    ' ActiveWorkbook.Connections("MSN MoneyCentral Investor Aktienkurse").Delete
     
    derberg222, 20. Juli 2015
    #27
  13. fette Elfe Erfahrener User

    Externe Mappe täglich importieren und aktualisieren

    Hallo derberg222,

    sorry, in den letzten Tagen hatte ich zuviel um die Ohren, um mich mit Deinem Problem zu beschäftigen.

    Zuerst mal eine Bitte:
    Schreibe bzw. kopiere bitte niemals Code in das Textfeld hier im Forum. Das wird erstens total unleserlich, und zweitens können sich auch winzige Fehler einschleichen. (bei einzelnen Zeilen oder Befehlen ist das was anderes)
    Ganz unten neben dem Knopf "Antworten" findest Du den Knopf "Erweitert". Draufklicken. Danach findest Du über dem Textfeld ein "#-Symbol". Wenn Du darauf klickst erscheint im Textfeld an der Cursorposition "[ CODE ] [ /CODE ]", und der Cursor steht zwischen den beiden "Code". Füge dort Deinen Code ein, und er wird so angezeigt wie in meinen Antworten weiter oben. Dadurch verliert er seine Formatierung nicht, und bleibt lesbar.

    Also, ich hab mir die Mühe gemacht, und den von Dir geposteten Code Zeile für Zeile mit meinem Verglichen.
    Offensichtlich hast Du keine Veränderungen vorgenommen, die eine Fehlfunktion auslösen könnten. Das musste ich erstmal ausschliessen.
    Denn nachvollziehen bzw. reproduzieren kann ich den von Dir beschriebenen Fehler leider immer noch nicht.

    Das einzige was mir aufgefallen ist:
    Weiter oben hast Du geschrieben, dass Du die zu suchende Spaltenüberschrift
    Code:
                '################################################################################
                ' Spaltenüberschrift der Datumsspalte, muss angepasst werden wenn sie sich ändert
                If .Cells(1, loCounter) = "LAST_SOL_DATE" Then                       ' wenn die Datumsspalte anhand der Überschrift gefunden wurde
                '################################################################################
    wie folgt geändert hättest:
    Code:
                '################################################################################
                ' Spaltenüberschrift der Datumsspalte, muss angepasst werden wenn sie sich ändert
                If .Cells(1, loCounter) = "FIRST_RCT_DATE" Then                       ' wenn die Datumsspalte anhand der Überschrift gefunden wurde
                '################################################################################
    Davon sehe ich in dem von Dir geposteten Code aber nichts.
    Kann es sein, dass Du diese Änderung nicht gespeichert und danach vergessen hast, und dass das von Dir eingegebene Datum in der Spalte "LAST_SOL_DATE" nicht vorkommt, und das gesuchte Datum deshalb nicht gefunden wird?

    Falls dies nicht der Fehler ist, fällt mir momentan nur ein, dass Du es irgendwie hinbekommst, das Datum so zu tippen, dass es zwar als Datum erkannt wird, aber nicht in der Quelldatei gefunden wird. Ich kann mir momentan zwar nicht vorstellen wie das geht, aber schreibe doch bitte mal die ganz exakte Schreibweise wie Du ein Datum in die Input-Box eintippst. Nur so können wir dies auch ausschliessen.

    Ansonsten könnte es noch an der Quelldatei liegen. Möglicherweise werden die Daten nicht als Datum erkannt, oder sind irgendwie falsch formatiert. Aber, Deine bisherigen Quelldateien geben mir dafür keinen Anhaltspunkt, weil bei mir dort alles funktioniert.

    Übrigens verstehe ich auch Dein Problem mit der Größe der Zieldatei nicht. Bei mir ist sie inkl. Code gerade mal 40 kb groß.
     
    fette Elfe, 24. Juli 2015
    #28
  14. derberg222 Erfahrener User
    Hallo Achim

    wollte mich nochmal bedanken für die Unterstützung ich war in Urlaub daher konnte ich mich nicht melden. Ich habe das Thema weitestgehend abschliessen können, es kann sein das ich die ein oder andere Sache noch klären oder ändern muss und würde aber dazu einen neuen Thread aufmachen. Vielen Dank !
     
    derberg222, 24. August 2015
    #29
  15. fette Elfe Erfahrener User
    Hallo Berg,

    es wäre natürlich schön für alle Mitlesenden und Hilfesuchenden (und für mich aus Neugier), wenn Du uns mitteilen würdest wo nun das Problem mit dem Datum lag, und wie Du es gelöst hast.
    ;O)
     
    fette Elfe, 24. August 2015
    #30
Thema:

Externe Mappe täglich importieren und aktualisieren

Die Seite wird geladen...
  1. Externe Mappe täglich importieren und aktualisieren - Similar Threads - Externe Mappe täglich

  2. Externe Mails mit bedingter Formatierung farbig hervorheben

    in Microsoft Outlook Hilfe
    Externe Mails mit bedingter Formatierung farbig hervorheben: Hallo zusammen! Ich möchte externe Mails (also Mails von Versendern, die nicht von der Domain @geanvas.com kommen) in meinem Posteingang farbig hervorheben. Dazu habe ich in der bedingten...
  3. Nur eindeutige Werte berechnen aus externer Datei

    in Microsoft Excel Hilfe
    Nur eindeutige Werte berechnen aus externer Datei: Hallo zusammen, ich stehe etwas auf dem Schlauch und hoffe ihr könnt mir weiterhelfen falls es überhaupt möglich ist. Ich habe eine Datei wo die Ergebnisse ausgegeben werden sollen und eine...
  4. Variable in Pfad zu externem Inhalt (Sharepoint)

    in Microsoft Excel Hilfe
    Variable in Pfad zu externem Inhalt (Sharepoint): Hallo, ich habe eine Excel-Tabelle, welche Daten aus einem externen Bezug holt. Der Pfad sieht so aus:...
  5. E-Mail aus externer Quelle

    in Microsoft Outlook Hilfe
    E-Mail aus externer Quelle: Hallo, es handelt sich hier um Outlook 2016 auf einem Windows 10 System. Es gibt E-Mails die man über den klasischen Weg/Empfang selbst erhält, diese landen dann zuerst im Posteingangs Ordner....
  6. Öffnen einer externen Präsentation

    in Microsoft PowerPoint Hilfe
    Öffnen einer externen Präsentation: Moin Moin In unserem Unternehmen gibt es drei Abteilungen plus den Chef. Jede Abteilung und der Chef pflegt eine eigene Präsentation. Einmal die Woche soll es eine gemeinsame Präsentation geben....
  7. Suche nach zwei Kriterien in externem Excel-Dokument

    in Microsoft Excel Hilfe
    Suche nach zwei Kriterien in externem Excel-Dokument: Hallo allerseits. Ich brauche wieder mal Hilfe. Ich habe eine Tabelle Spalte A - Kundennummer Spalte B - Produktnummer Steht die Produktnummer neben einer Kundennummer, hat dieser Kunde dieses...
  8. Zählenwenns mit externem Bezug (Matrixformel)

    in Microsoft Excel Hilfe
    Zählenwenns mit externem Bezug (Matrixformel): Hallo in die Runde, ich habe folgende Herausforderung, bei der ich eure Hilfe brauche. Ich habe 1 Auswertungsdatei, die mir aus einer Anzahl an wachsenden Exceldateien auswerten soll, wie oft...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden