Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Probleme beim speichern
#1
Hallo,

wenn ich über den normalen Excel Speicherbutton speichere funktioniert mein Code einwandfrei (BeforeSave), sobald ich aber über den im Menü selbst platzierten Button ("RibbonX") speichere bricht mein Code an grün markierter stelle ab (Im Code ziemlich weit unten) und scheinbar wird auch die "technik.xlsm" auch nicht geöffnet, deswegen bricht er auch da ab, verstehe aber nicht warum.
Woran kann das liegen ? Hat jemand eine Idee ?


Code:
[b]Code für RibbonX (ohne untere Codes funktioniert dieser einwandfrei)[/b]
Sub speichern(Control As IRibbonControl)
ThisWorkbook.Save
End Sub


[b]Codes neu hinzugefügt:[/b]
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
  Call Technik_go
End Sub

__________________________________________________________________________

Option Explicit
Public Sub Technik_go()

Dim wbStart, wbZiel As Workbook
Dim arrProtect, wks As Worksheet
Dim loLetzte As Long, raFund As Range

Application.ScreenUpdating = False

Application.CutCopyMode = True

Worksheets("Technik").Activate

With Worksheets("Technik")
 
  'KW
  .Range("A2").Resize(21) = Worksheets("Zeiten").Range("A3")
 
  'Montag Frühschicht____________________________________________
 
  'Wochentag
  .Range("B2").Value = Worksheets("Zeiten").Range("C1")
  'Datum
  .Range("C2").Value = Worksheets("Zeiten").Range("E2")
  'Schicht
  .Range("D2").Value = Worksheets("Zeiten").Range("E1")
  'Dauer(min)
  .Range("E2").Value = Worksheets("Zeiten").Range("C142")
  'Anzahl(#)
  .Range("F2").Value = Worksheets("Zeiten").Range("D142")
  'OE-Verlust(%)
  .Range("G2").Value = Worksheets("Zeiten").Range("E142")
  'OE(%)
  .Range("H2").Value = Worksheets("Zeiten").Range("E251")
 
  'Montag Spätschicht____________________________________________
 
  'Wochentag
  .Range("B3").Value = Worksheets("Zeiten").Range("I1")
  'Datum
  .Range("C3").Value = Worksheets("Zeiten").Range("K2")
  'Schicht
  .Range("D3").Value = Worksheets("Zeiten").Range("K1")
  'Dauer(min)
  .Range("E3").Value = Worksheets("Zeiten").Range("I142")
  'Anzahl(#)
  .Range("F3").Value = Worksheets("Zeiten").Range("J142")
  'OE-Verlust(%)
  .Range("G3").Value = Worksheets("Zeiten").Range("K142")
  'OE(%)
  .Range("H3").Value = Worksheets("Zeiten").Range("K251")
 
  'Montag Nachtschicht___________________________________________
 
  'Wochentag
  .Range("B4").Value = Worksheets("Zeiten").Range("O1")
  'Datum
  .Range("C4").Value = Worksheets("Zeiten").Range("Q2")
  'Schicht
  .Range("D4").Value = Worksheets("Zeiten").Range("Q1")
  'Dauer(min)
  .Range("E4").Value = Worksheets("Zeiten").Range("O142")
  'Anzahl(#)
  .Range("F4").Value = Worksheets("Zeiten").Range("P142")
  'OE-Verlust(%)
  .Range("G4").Value = Worksheets("Zeiten").Range("Q142")
  'OE(%)
  .Range("H4").Value = Worksheets("Zeiten").Range("Q251")
 

  'Dienstag Frühschicht____________________________________________
 
  'Wochentag
  .Range("B5").Value = Worksheets("Zeiten").Range("Z1")
  'Datum
  .Range("C5").Value = Worksheets("Zeiten").Range("AB2")
  'Schicht
  .Range("D5").Value = Worksheets("Zeiten").Range("AB1")
  'Dauer(min)
  .Range("E5").Value = Worksheets("Zeiten").Range("Z142")
  'Anzahl(#)
  .Range("F5").Value = Worksheets("Zeiten").Range("AA142")
  'OE-Verlust(%)
  .Range("G5").Value = Worksheets("Zeiten").Range("AB142")
  'OE(%)
  .Range("H5").Value = Worksheets("Zeiten").Range("AB251")
 
  'Dienstag Spätschicht____________________________________________
 
  'Wochentag
  .Range("B6").Value = Worksheets("Zeiten").Range("AF1")
  'Datum
  .Range("C6").Value = Worksheets("Zeiten").Range("AH2")
  'Schicht
  .Range("D6").Value = Worksheets("Zeiten").Range("AH1")
  'Dauer(min)
  .Range("E6").Value = Worksheets("Zeiten").Range("AF142")
  'Anzahl(#)
  .Range("F6").Value = Worksheets("Zeiten").Range("AG142")
  'OE-Verlust(%)
  .Range("G6").Value = Worksheets("Zeiten").Range("AH142")
  'OE(%)
  .Range("H6").Value = Worksheets("Zeiten").Range("AH251")
 
  'Dienstag Nachtschicht___________________________________________
 
  'Wochentag
  .Range("B7").Value = Worksheets("Zeiten").Range("AL1")
  'Datum
  .Range("C7").Value = Worksheets("Zeiten").Range("AN2")
  'Schicht
  .Range("D7").Value = Worksheets("Zeiten").Range("AN1")
  'Dauer(min)
  .Range("E7").Value = Worksheets("Zeiten").Range("AL142")
  'Anzahl(#)
  .Range("F7").Value = Worksheets("Zeiten").Range("AM142")
  'OE-Verlust(%)
  .Range("G7").Value = Worksheets("Zeiten").Range("AN142")
  'OE(%)
  .Range("H7").Value = Worksheets("Zeiten").Range("AN251")
 
  'Mittwoch Frühschicht____________________________________________
 
  'Wochentag
  .Range("B8").Value = Worksheets("Zeiten").Range("AW1")
  'Datum
  .Range("C8").Value = Worksheets("Zeiten").Range("AY2")
  'Schicht
  .Range("D8").Value = Worksheets("Zeiten").Range("AY1")
  'Dauer(min)
  .Range("E8").Value = Worksheets("Zeiten").Range("AW142")
  'Anzahl(#)
  .Range("F8").Value = Worksheets("Zeiten").Range("AX142")
  'OE-Verlust(%)
  .Range("G8").Value = Worksheets("Zeiten").Range("AY142")
  'OE(%)
  .Range("H8").Value = Worksheets("Zeiten").Range("AY251")
 
  'Mittwoch Spätschicht____________________________________________
 
  'Wochentag
  .Range("B9").Value = Worksheets("Zeiten").Range("BC1")
  'Datum
  .Range("C9").Value = Worksheets("Zeiten").Range("BE2")
  'Schicht
  .Range("D9").Value = Worksheets("Zeiten").Range("BE1")
  'Dauer(min)
  .Range("E9").Value = Worksheets("Zeiten").Range("BC142")
  'Anzahl(#)
  .Range("F9").Value = Worksheets("Zeiten").Range("BD142")
  'OE-Verlust(%)
  .Range("G9").Value = Worksheets("Zeiten").Range("BE142")
  'OE(%)
  .Range("H9").Value = Worksheets("Zeiten").Range("BE251")
 
  'Mittwoch Nachtschicht___________________________________________
 
  'Wochentag
  .Range("B10").Value = Worksheets("Zeiten").Range("BI1")
  'Datum
  .Range("C10").Value = Worksheets("Zeiten").Range("BK2")
  'Schicht
  .Range("D10").Value = Worksheets("Zeiten").Range("BK1")
  'Dauer(min)
  .Range("E10").Value = Worksheets("Zeiten").Range("BI142")
  'Anzahl(#)
  .Range("F10").Value = Worksheets("Zeiten").Range("BJ142")
  'OE-Verlust(%)
  .Range("G10").Value = Worksheets("Zeiten").Range("BK142")
  'OE(%)
  .Range("H10").Value = Worksheets("Zeiten").Range("BK251")

  'Donnerstag Frühschicht____________________________________________
 
  'Wochentag
  .Range("B11").Value = Worksheets("Zeiten").Range("BT1")
  'Datum
  .Range("C11").Value = Worksheets("Zeiten").Range("BV2")
  'Schicht
  .Range("D11").Value = Worksheets("Zeiten").Range("BV1")
  'Dauer(min)
  .Range("E11").Value = Worksheets("Zeiten").Range("BT142")
  'Anzahl(#)
  .Range("F11").Value = Worksheets("Zeiten").Range("BU142")
  'OE-Verlust(%)
  .Range("G11").Value = Worksheets("Zeiten").Range("BV142")
  'OE(%)
  .Range("H11").Value = Worksheets("Zeiten").Range("BV251")
 
  'Donnerstag Spätschicht____________________________________________
 
  'Wochentag
  .Range("B12").Value = Worksheets("Zeiten").Range("BZ1")
  'Datum
  .Range("C12").Value = Worksheets("Zeiten").Range("CB2")
  'Schicht
  .Range("D12").Value = Worksheets("Zeiten").Range("CB1")
  'Dauer(min)
  .Range("E12").Value = Worksheets("Zeiten").Range("BZ142")
  'Anzahl(#)
  .Range("F12").Value = Worksheets("Zeiten").Range("CA142")
  'OE-Verlust(%)
  .Range("G12").Value = Worksheets("Zeiten").Range("CB142")
  'OE(%)
  .Range("H12").Value = Worksheets("Zeiten").Range("CB251")
 
  'Donnerstag Nachtschicht___________________________________________
 
  'Wochentag
  .Range("B13").Value = Worksheets("Zeiten").Range("CF1")
  'Datum
  .Range("C13").Value = Worksheets("Zeiten").Range("CH2")
  'Schicht
  .Range("D13").Value = Worksheets("Zeiten").Range("CH1")
  'Dauer(min)
  .Range("E13").Value = Worksheets("Zeiten").Range("CF142")
  'Anzahl(#)
  .Range("F13").Value = Worksheets("Zeiten").Range("CG142")
  'OE-Verlust(%)
  .Range("G13").Value = Worksheets("Zeiten").Range("CH142")
  'OE(%)
  .Range("H13").Value = Worksheets("Zeiten").Range("CH251")

  'Freitag Frühschicht____________________________________________
 
  'Wochentag
  .Range("B14").Value = Worksheets("Zeiten").Range("CQ1")
  'Datum
  .Range("C14").Value = Worksheets("Zeiten").Range("CS2")
  'Schicht
  .Range("D14").Value = Worksheets("Zeiten").Range("CS1")
  'Dauer(min)
  .Range("E14").Value = Worksheets("Zeiten").Range("CQ142")
  'Anzahl(#)
  .Range("F14").Value = Worksheets("Zeiten").Range("CR142")
  'OE-Verlust(%)
  .Range("G14").Value = Worksheets("Zeiten").Range("CS142")
  'OE(%)
  .Range("H14").Value = Worksheets("Zeiten").Range("CS251")
 
  'Freitag Spätschicht____________________________________________
 
  'Wochentag
  .Range("B15").Value = Worksheets("Zeiten").Range("CW1")
  'Datum
  .Range("C15").Value = Worksheets("Zeiten").Range("CY2")
  'Schicht
  .Range("D15").Value = Worksheets("Zeiten").Range("CY1")
  'Dauer(min)
  .Range("E15").Value = Worksheets("Zeiten").Range("CW142")
  'Anzahl(#)
  .Range("F15").Value = Worksheets("Zeiten").Range("CX142")
  'OE-Verlust(%)
  .Range("G15").Value = Worksheets("Zeiten").Range("CY142")
  'OE(%)
  .Range("H15").Value = Worksheets("Zeiten").Range("CY251")
 
  'Freitag Nachtschicht___________________________________________
 
  'Wochentag
  .Range("B16").Value = Worksheets("Zeiten").Range("DC1")
  'Datum
  .Range("C16").Value = Worksheets("Zeiten").Range("DE2")
  'Schicht
  .Range("D16").Value = Worksheets("Zeiten").Range("DE1")
  'Dauer(min)
  .Range("E16").Value = Worksheets("Zeiten").Range("DC142")
  'Anzahl(#)
  .Range("F16").Value = Worksheets("Zeiten").Range("DD142")
  'OE-Verlust(%)
  .Range("G16").Value = Worksheets("Zeiten").Range("DE142")
  'OE(%)
  .Range("H16").Value = Worksheets("Zeiten").Range("DE251")

  'Samstag Frühschicht____________________________________________
 
  'Wochentag
  .Range("B17").Value = Worksheets("Zeiten").Range("DN1")
  'Datum
  .Range("C17").Value = Worksheets("Zeiten").Range("DP2")
  'Schicht
  .Range("D17").Value = Worksheets("Zeiten").Range("DP1")
  'Dauer(min)
  .Range("E17").Value = Worksheets("Zeiten").Range("DN142")
  'Anzahl(#)
  .Range("F17").Value = Worksheets("Zeiten").Range("DO142")
  'OE-Verlust(%)
  .Range("G17").Value = Worksheets("Zeiten").Range("DP142")
  'OE(%)
  .Range("H17").Value = Worksheets("Zeiten").Range("DP251")
 
  'Samstag Spätschicht____________________________________________
 
  'Wochentag
  .Range("B18").Value = Worksheets("Zeiten").Range("DT1")
  'Datum
  .Range("C18").Value = Worksheets("Zeiten").Range("DV2")
  'Schicht
  .Range("D18").Value = Worksheets("Zeiten").Range("DV1")
  'Dauer(min)
  .Range("E18").Value = Worksheets("Zeiten").Range("DT142")
  'Anzahl(#)
  .Range("F18").Value = Worksheets("Zeiten").Range("DU142")
  'OE-Verlust(%)
  .Range("G18").Value = Worksheets("Zeiten").Range("DV142")
  'OE(%)
  .Range("H18").Value = Worksheets("Zeiten").Range("DV251")
 
  'Samstag Nachtschicht___________________________________________
 
  'Wochentag
  .Range("B19").Value = Worksheets("Zeiten").Range("DZ1")
  'Datum
  .Range("C19").Value = Worksheets("Zeiten").Range("EB2")
  'Schicht
  .Range("D19").Value = Worksheets("Zeiten").Range("EB1")
  'Dauer(min)
  .Range("E19").Value = Worksheets("Zeiten").Range("DZ142")
  'Anzahl(#)
  .Range("F19").Value = Worksheets("Zeiten").Range("EA142")
  'OE-Verlust(%)
  .Range("G19").Value = Worksheets("Zeiten").Range("EB142")
  'OE(%)
  .Range("H19").Value = Worksheets("Zeiten").Range("EB251")

  'Sonntag Frühschicht____________________________________________
 
  'Wochentag
  .Range("B20").Value = Worksheets("Zeiten").Range("EK1")
  'Datum
  .Range("C20").Value = Worksheets("Zeiten").Range("EM2")
  'Schicht
  .Range("D20").Value = Worksheets("Zeiten").Range("EM1")
  'Dauer(min)
  .Range("E20").Value = Worksheets("Zeiten").Range("EK142")
  'Anzahl(#)
  .Range("F20").Value = Worksheets("Zeiten").Range("EL142")
  'OE-Verlust(%)
  .Range("G20").Value = Worksheets("Zeiten").Range("EM142")
  'OE(%)
  .Range("H20").Value = Worksheets("Zeiten").Range("EM251")
 
  'Sonntag Spätschicht____________________________________________
 
  'Wochentag
  .Range("B21").Value = Worksheets("Zeiten").Range("EQ1")
  'Datum
  .Range("C21").Value = Worksheets("Zeiten").Range("ES2")
  'Schicht
  .Range("D21").Value = Worksheets("Zeiten").Range("ES1")
  'Dauer(min)
  .Range("E21").Value = Worksheets("Zeiten").Range("EQ142")
  'Anzahl(#)
  .Range("F21").Value = Worksheets("Zeiten").Range("ER142")
  'OE-Verlust(%)
  .Range("G21").Value = Worksheets("Zeiten").Range("ES142")
  'OE(%)
  .Range("H21").Value = Worksheets("Zeiten").Range("ES251")
 
  'Sonntag Nachtschicht___________________________________________
 
  'Wochentag
  .Range("B22").Value = Worksheets("Zeiten").Range("EW1")
  'Datum
  .Range("C22").Value = Worksheets("Zeiten").Range("EY2")
  'Schicht
  .Range("D22").Value = Worksheets("Zeiten").Range("EY1")
  'Dauer(min)
  .Range("E22").Value = Worksheets("Zeiten").Range("EW142")
  'Anzahl(#)
  .Range("F22").Value = Worksheets("Zeiten").Range("EX142")
  'OE-Verlust(%)
  .Range("G22").Value = Worksheets("Zeiten").Range("EY142")
  'OE(%)
  .Range("H22").Value = Worksheets("Zeiten").Range("EY251")

End With

Set wbStart = ActiveWorkbook
Set wbZiel = Workbooks.Open("P:\technik.xlsm")

[color=#2ecc40][b]Workbooks("technik.xlsm").Activate[/b][/color]
With wbZiel.Worksheets("Technik")
    Set raFund = .Columns("A").Find(what:=wbStart.Worksheets("Technik").Range("A2"), LookIn:=xlValues, lookat:=xlWhole)
   
    If Not raFund Is Nothing Then
        wbStart.Worksheets("Technik").Range("A2:H22").Copy
        wbZiel.Worksheets("Technik").Range("A" & raFund.Row).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
    Else
        wbStart.Worksheets("Technik").Range("A2:H22").Copy
        wbZiel.Worksheets("Technik").Range("A" & .Cells(.Rows.Count, "A").End(xlUp).Offset(1).Row).PasteSpecial _
        Paste:=xlPasteValuesAndNumberFormats
    End If
End With

Application.CutCopyMode = False
Application.ScreenUpdating = True

Workbooks("technik.xlsm").Activate
Workbooks("technik.xlsm").Close True

Set raFund = Nothing

Worksheets("Zeiten").Activate



End Sub
Antworten Top
#2
Hallöchen,

wenn die Datei nicht geöffnet wird müsste auch schon beim Open ein Fehler erscheinen.

Bei Deinen Variablendeklarationen gibt es eventuell auch Verbesserungsbedarf. Mit

Dim wbStart, wbZiel As Workbook

wird nur wbZiel als Workbook deklariert, wbStart ist Variant. Soll beides Workbook werden, dann mit

Dim wbStart As Workbook, wbZiel As Workbook
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste