Office: (Office 365) per VBA in Datei springen und wieder in Ausgangs Datei zurück

Helfe beim Thema per VBA in Datei springen und wieder in Ausgangs Datei zurück in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich versuche mal mein Problem zu beschreiben. Ich habe zwei Dateien "Zählerstände" und "Abrechnung" Die Datei "Abrechnung" ist leer und... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Cherished, 3. Juli 2023.

  1. per VBA in Datei springen und wieder in Ausgangs Datei zurück


    Hallo zusammen,
    ich versuche mal mein Problem zu beschreiben.
    Ich habe zwei Dateien "Zählerstände" und "Abrechnung"
    Die Datei "Abrechnung" ist leer und wird immer unter dem Aktuellem Jahr neu abgespeichert. z.B "Abrechnung_2022"
    Ich spring dann, von der Datei "Abrechnung_2022" auf die Datei "Zählerstände". Das ist kein Problem.
    Nun möchte aber wieder in Datei "Abrechnung_2022" zurückspringen. Das ist mein Problem da sich ja der Speichername jedes Jahr ändert.
    Habe schon einige Lösungen gefunden aber dort springt man immer nur von Tabellenblatt zu Tabellenblatt, nie von Datei zu Datei.
    Oder ich geben einfach die falschen Suchwörter ein.per VBA in Datei springen und wieder in Ausgangs Datei zurück *;)*
    Ich hoffe ich konnte das problem einigermaßen erklären.
    Gruß
    Martin
     
    Cherished, 3. Juli 2023
    #1
  2. Klaus-Dieter Erfahrener User
    Hallo Martin,

    warum zwei Dateien, für etwas, das zusammen gehört? Genauso überflüssig ist es, für jedes Jahr eine neue Liste anzulegen.
     
    Klaus-Dieter, 3. Juli 2023
    #2
  3. Hallo Klaus-Dieter
    generell hast du Recht.
    So habe ich auch mal angefangen.(Mit einer Datei)
    Zur genauer Erklärung:
    Wobei vielleicht hast du schon erraten es geht um eine Nebenkostenabrechnung (Privat)
    In der Datei "Abrechnung" werden die Komplette Berechnungen gemacht. Heizung, Umlegbare Kosten usw
    Wenn ich nun den Wasserverbrauch z.b Jahr 2022 machen will brauche ich natürlich die Zählerstände vom Vorjahr. So weit so gut.
    Aber was mache ich im Jahr 2023? Natürlich könnte ich die Datei 2022 aufmachen und alle alten Daten löschen und dann unter 2023 abspeichern. Das ist aber nicht rentabel. Deshalb hatte ich die Idee mit den zwei Dateien.
    Gruß
    Martin
     
    Cherished, 3. Juli 2023
    #3
  4. Beverly
    Beverly Erfahrener User

    per VBA in Datei springen und wieder in Ausgangs Datei zurück

    Hi Martin,

    was versehst du unter "in die andere Datei springen"? Arbeitest du dann dort von Hand weiter oder bearbeitest und holst du dir dort nur Daten per VBA? Und in welcher Mappe befindet sich dein Code? Wenn du nur Daten bearbeitest/holst und sich der Code in der Mappe "Abrechnung" befindet, kannst du die andere Mappe mit ihrem Nahmen ansprechen - Workbooks("Zählerstände"). Die Mappe "Abrechnung" dagegen kannst du mit ThisWokbook ansprechen und musst auch überhaupt nicht in die andere Datei wechseln.


    per VBA in Datei springen und wieder in Ausgangs Datei zurück Grußformelper VBA in Datei springen und wieder in Ausgangs Datei zurück Beverly's Excel - Inn
     
    Beverly, 4. Juli 2023
    #4
  5. Hallo Karin,
    das mit dem Ansprechen habe ich schon hinbekommen. Der Weg zurück ist das problem. Ich sage mal so ich öffne die Datei "Zählerstände" von der Datei "Abrechnung" oder halt auch von der Datei "Abrechnung_2022" an.
    Wie in post#3 beschrieben hatte ich in der Datei "Abrechnung" auch alle Zählerstände. (Abrechnungsjahr und Vorjahre) Diese habe ich dann unter dem Aktuellen Abrechnungsjahr abgespeichert (Abrechnung_2022). Diese Datei bearbeite ich dann weiter. Jetzt kann es aber vorkommen, sollte nicht, das ein Zähler vergessen wurde ist ,einzutragen. Diesen trage ich dann in die Datei Abrechnung_2022 ein und alles läuft weiter richtig. Jetzt kommt's. Bei der Abrechnung 2023 fehlt mir die vergessene Zählerstände in der Datei "Abrechnung" Deshalb dachte ich, mache zwei Dateien.
    Hoffen ich konnte es noch weiter ausführen.
    Würde gerne nur mit einer Datei arbeiten aber ich weiß nicht wie.
    Vielleich hast jemand anderes, oder sogar du, eine Ansatz. Bin da völlig offen.
    Danke
    Gruß
    Martin
     
    Cherished, 4. Juli 2023
    #5
  6. Beverly
    Beverly Erfahrener User
    Hi Martin,

    wenn ein Zählerstand bei der Abrechnung 2022 vergessen wurde - inwiefern fehlt er dann auch bei der Abrechnung 2023?

    Und generell zu deinen mehreren Mappen: wie wäre es, wenn du ALLES in eine einzige Mappe einträgst, also komplett alle Zählerstände in ein Tabellenblatt, und für jedes Jahr ein eigenes Tabellenblatt anlegst?


    per VBA in Datei springen und wieder in Ausgangs Datei zurück Grußformelper VBA in Datei springen und wieder in Ausgangs Datei zurück Beverly's Excel - Inn
     
    Beverly, 4. Juli 2023
    #6
  7. Hallo Karin,
    ich habe mich wohl nicht so genau ausgedrückt.
    Die Datei "Abrechnung" hat, wie gesagt keine Daten außer Zählerstände aus den Vorjahr, und die ganzen Formel um die Kosten ,Verbräuche zu berechnen.
    Habe mal eine Beispieldatei angefügt. Diese ist aus den Anfangszeiten, und hat noch einige Fehler. Aber es Verdeutlicht wie sie aussieht.
    Von dieser Datei starte ich dann immer um ein neues Abrechnungsjahr zu beginnen.
    Deshalb würde ein nicht eingetragener Zählerstand fehlen da man ihn ja nur in der Datei "Abrechnung_2022" eintragen hat und nicht in der Datei "Abrechnung". Und dieser würde dann fehlen um die Berechnung für das Folgejahr zu machen
    Wie gesagt, würde ich auch gerne die Zählerstände nicht auf eine separate Datei anlegen.
    Mir ist aber eh ein neuer Gedanke gekommen. Ich arbeite gerade an einem Code, der vor dem eigentlichem speichern (z.B "Abrechnung_2022") überprüft ob alle Zählerstände vom Aktuellem Abrechnungsjahr eingetragen sind.
    Gruß
    Martin
     
    Cherished, 5. Juli 2023
    #7
  8. Beverly
    Beverly Erfahrener User

    per VBA in Datei springen und wieder in Ausgangs Datei zurück

    Hi Martin,

    mal eine generelle Frage: weshalb werden fehlende Zählerständen denn überhaupt erst in die Mappe des laufenden Jahres eingetragen und nicht in die Mappe "Zählerstände"? Dafür sollte diese doch eigentlich da sein und quasi als "Datenbank" fungieren, was die Arbeit wesentlich erleichtern würde.


    per VBA in Datei springen und wieder in Ausgangs Datei zurück Grußformelper VBA in Datei springen und wieder in Ausgangs Datei zurück Beverly's Excel - Inn
     
    Beverly, 5. Juli 2023
    #8
  9. Hallo Karin,
    ach bin ich doof.
    ich schreib per UserForm die Zählerstände in die Datei "Abrechnung", mit folgendem Code rein
    Code:
     Worksheets("Zählerinfos").AutoFilterMode = False
    Dim last As Integer
    Dim c As Control
    last = Worksheets("Zählerinfos").Cells(Rows.Count, 1).End(xlUp).Row + 1
       'ZählerNr
      Cells(last, 1).Value = CLng(ZählerNr)
       'Datum von
       Cells(last, 2).Value = CDate(Datum_Von)
       'Datum bis
       Cells(last, 3).Value = CDate(Datum_Bis)
       'Stockwerk
       Cells(last, 4).Value = Stockwerk
       'Zählerart
       Cells(last, 5).Value = Zählerart
       'Stand bis KWh
     If Stand_bis_KW <> "" Then
       Cells(last, 8).Value = CDec(Stand_bis_KW)
       End If
       'Stand bis m³
     If Stand_bis_m3 <> "" Then
       Cells(last, 9).Value = CDec(Stand_bis_m3)
       End If
       'Stand bis HT
     If Stand_bis_HT <> "" Then
       Cells(last, 12).Value = CDec(Stand_bis_HT)
       End If
       'Stand bis NT
     If Stand_bis_NT <> "" Then
       Cells(last, 13).Value = CDec(Stand_bis_NT)
     End If
     'löscht alle Inhalter
     
    For Each c In Zähler_Stände_eintragen.Controls
    If TypeOf c Is MSForms.TextBox Then
    c = ""
    End If
    If TypeOf c Is MSForms.ComboBox Then
    c = ""
    
    End If
    Next
    ZählerNr.SetFocus
    End Sub
    wie müsste ich diesen Umschreiben das die Daten in die Datei "Zählerstände" geschrieben werden
    der Pfad ist : "C:\Users\guent\Documents\martin\Ertingen\Abrechnung ab 2021\Ertingen Zählerstände.xlsm"
    Dann wäre es nämlich egal von welcher Datei ich die Daten hineinschreibe.
    Ich bin froh das du so nachgefragt hast.
    Danke
    Gruß
    Martin
     
    Cherished, 5. Juli 2023
    #9
  10. Beverly
    Beverly Erfahrener User
    Hi Martin,

    zuerst müsstest du natürlich die Mappe "Zählerstände" öffnen, denn nur in eine offene Mappe kann geschrieben werden. Das ganze dann z.B. nach diesem Prinzip:

    Code:
        Dim last As Long  '<== Variable für Zeilennummer besser als Long dimensionieren
        With Workbooks.Open("C:\Users\guent\Documents\martin\Ertingen\Abrechnung ab 2021\Ertingen Zählerstände.xlsm")
            With Worksheets("Tabelle1")  '<== Name Tabellenblatt anpassen
                last = .Cells(Rows.Count, 1).End(xlUp).Row + 1
                .Cells(last, 1).Value = CLng(ZählerNr)
              
                '... usw.
              
              
            End With
            ' Zählerstände speichern und schließen
            .Close True
        End With
    
    


    per VBA in Datei springen und wieder in Ausgangs Datei zurück Grußformelper VBA in Datei springen und wieder in Ausgangs Datei zurück Beverly's Excel - Inn
     
    Beverly, 5. Juli 2023
    #10
  11. Hallo Karin,
    Danke.
    konnte das ganze noch nicht so richtig testen., den durch die Trennung auf zwei Dateien bekomme ich bei den anderen Code Fehlermeldungen die früher auf das Tabellenblatt "Zählerinfos" zugegriffen haben.
    Diese muss ich erstmal umschreiben.
    Außerdem habe ich leider den Überblick verloren welche Datei gerade die richtige ist. Das kommt davon wenn man sich kein Konzept erarbeitet. Ich probiere halt einfach aus.
    Werde aber berichten ob es geklappt hat, was bestimmt der fall sein wird, denn von Dir habe ich auch schon den ein oder anderen Code übernommenper VBA in Datei springen und wieder in Ausgangs Datei zurück *:)*
    Gruß
    Martin
     
    Cherished, 6. Juli 2023
    #11
  12. Hallo Karin,
    da bin ich wieder.
    Wie erwartet hat dein Code Funktioniert.
    Doch muss ich doch noch was Fragen.
    Die Combobox fülle ich (wegen der Übersicht) nur mit den Zählernr. vom Vorjahr.
    Wie kann ich trotzdem manuelle Eintragungen vornehmen?
    Code zum Filtern
    Code:
    Private Sub UserForm_Initialize()
     Dim sPfad As String
     Dim wbQuelle As Workbook
     Dim cell As Range
     Dim fil As Range
    'Pfad der Zählerinfos
    sPfad = "C:\Users\guent\Documents\martin\neuer Versuch Abrechnung\Ertingen Zählerstände.xlsm"
    
    'Datei Zählerinfos öffnen
    Set wbQuelle = Workbooks.Open(sPfad)
      wbQuelle.Worksheets(1).ListObjects("Tab_Zaehler_Staende").AutoFilter.ShowAllData
    Dim rng As Range
    
    Dim Bis As Date
    Dim Von As Date
     Bis = DateAdd("yyyy", -1, ThisWorkbook.Worksheets("Verbrauchsberechnung").Range("b3"))
     Von = DateAdd("yyyy", 0, ThisWorkbook.Worksheets("Verbrauchsberechnung").Range("a3"))
    Set rng = wbQuelle.Worksheets(1).ListObjects("Tab_Zaehler_Staende").Range
    rng.AutoFilter 5, ">=" & CDbl(Bis)
    rng.AutoFilter 4, "<" & CDbl(Von)
    Set fil = wbQuelle.Worksheets(1).Range("Tab_Zaehler_Staende[ZählerNr]").SpecialCells(xlCellTypeVisible)
    For Each cell In fil
        ZählerNr.AddItem cell.Value
    Next cell
    
    End Sub
    Liegt es vielleicht daran schon, das ich keine manuellen Eintragungen machen kann?
    Ich habe gelesen das man im Eigenschaft Feld "Style 0- frmStyleDropDownCombo "
    auswählen soll. Das bring aber auch nicht das gewünschte Ergebnis
    Muss ich die Datei, nach deinem Code, eigentlich noch öffnen? Offen ist sie ja schon.
    Das ist nicht so wichtig funktioniert ja.
    Danke
    Gruß
    Martin
     
    Cherished, 10. Juli 2023
    #12
  13. Beverly
    Beverly Erfahrener User

    per VBA in Datei springen und wieder in Ausgangs Datei zurück

    Hi Martin,

    meinst du, dass du in der ComboBox keine Einträge machen kannst wenn diese nicht in der Liste vorhanden sind? Dafür ist die Eigenschaft "MatchRequired" zuständig - diese muss auf False stehen (steht sie standardmäßig auch).


    per VBA in Datei springen und wieder in Ausgangs Datei zurück Grußformelper VBA in Datei springen und wieder in Ausgangs Datei zurück Beverly's Excel - Inn
     
    Beverly, 10. Juli 2023
    #13
  14. Hallo Karin
    genau.
    Sobald ich eine Zahl Anfange, wird die Nächstmögliche Zahl angezeigt und ich kann keine weitere Zahlen eintragen.
    Die Eigenschaft ist auf False eingestellt.
    Gruß
    Martin
     
    Cherished, 10. Juli 2023
    #14
  15. Beverly
    Beverly Erfahrener User
    Hi Martin,

    du musst dann einfach die ComboBox öffnen und den richtigen Eintrag auswählen.


    per VBA in Datei springen und wieder in Ausgangs Datei zurück Grußformelper VBA in Datei springen und wieder in Ausgangs Datei zurück Beverly's Excel - Inn
     
    Beverly, 10. Juli 2023
    #15
Thema:

per VBA in Datei springen und wieder in Ausgangs Datei zurück

Die Seite wird geladen...
  1. per VBA in Datei springen und wieder in Ausgangs Datei zurück - Similar Threads - VBA Datei springen

  2. einzelne Spalten in neue Dateien kopieren

    in Microsoft Excel Hilfe
    einzelne Spalten in neue Dateien kopieren: Hallo zusammen, ich brauche ein wenig Hilfestellung: Ich habe eine Tabelle (exemplarisch) Titel A Titel B Spalte A Spalte B...
  3. Zugriff auf andere Excel Datei ohne aktives Öffnen

    in Microsoft Excel Hilfe
    Zugriff auf andere Excel Datei ohne aktives Öffnen: Liebe Community, ich habe mir eine Formel geschrieben um Werte aus einer anderen Excel Datei in meine Haupt Excel Datei einzufügen. Leider muss die Datei aus der ich die Daten haben will immer...
  4. VBA - Fehlermeldung "Excel kann auf Datei nicht zugreifen"

    in Microsoft Excel Hilfe
    VBA - Fehlermeldung "Excel kann auf Datei nicht zugreifen": Hallo, ich habe folgenden Code bei dem ich leider immer eine Fehlermeldung erhalte. Der Fehler ist Folgender Laufzeitfehler '1004" Excel kann auf die Daten in ''Desktop" nicht zugreifen. Die...
  5. VBA verschiedene definierte "nicht leere" Bereiche aus Datei kopieren in neue Datei

    in Microsoft Excel Hilfe
    VBA verschiedene definierte "nicht leere" Bereiche aus Datei kopieren in neue Datei: Hallo zusammen, nachdem ich jetzt vieles hin- und her versucht habe komme ich nicht wirklich zu einem Ergebnis das ich gerne hätte. Ich habe einen Ordner in dem mehrere Excel Dateien...
  6. Bereich aus geschlossener Datei auslesen VBA

    in Microsoft Excel Hilfe
    Bereich aus geschlossener Datei auslesen VBA: Hallo, ich möchte bereiche aus geschlossener Datei Auslesen und ins aktuellen Blatt übernehmen. Beispiel Codes dazu habe ich einige gefunden nur keine passende zu meinem Problem. Die geschlossene...
  7. [VBA] Zwei neue Dateien als Emailanhang erzeugen

    in Microsoft Excel Hilfe
    [VBA] Zwei neue Dateien als Emailanhang erzeugen: Hallo zusammen, ich bastle gerade an meinem Code herum und komme nicht weiter. Das Ziel: In Tabelle1 liegen die Daten des ersten Blattes. Aus diesem Blatt soll eine neue Datei ohne Formeln, nur...
  8. Dateien über vba öffnen,zwischen Arbeitsmappen springen/aktivieren

    in Microsoft Excel Hilfe
    Dateien über vba öffnen,zwischen Arbeitsmappen springen/aktivieren: Hallo, ich habe folgendes folgendes Anliegen. Ich will in meiner datei ein makro ausführen, welche eine andere Datei öffnet und sich von dort aus verschiedene Spalten kopiert. Das funktioniert...
  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