Thema Datum  Von Nutzer Rating
Antwort
Rot LaufzeitFehler '9' bei Zeile kopieren
25.10.2020 12:39:06 Matthias
NotSolved
25.10.2020 12:50:57 ralf_b
NotSolved
25.10.2020 17:31:01 Gast68796
NotSolved
14.11.2020 15:54:53 Gast86382
NotSolved

Ansicht des Beitrags:
Von:
Matthias
Datum:
25.10.2020 12:39:06
Views:
817
Rating: Antwort:
  Ja
Thema:
LaufzeitFehler '9' bei Zeile kopieren

Hallo zusammen

Beim Zeilen prüfen resp. kopieren schmeist mein XLSM einen Laufzeitfehler '9'. Ich habe pro Kalenderwoche ein Arbeitsblatt (Spalten A-Q) mit folgendem Namen: z.B 20-11-W49 (Jahr 2-stellig/Monat/Kalenderwoche). (Scahde, dass ich keine Screenshots beifügen kann). In der Spalte A habe ich jeweils das entsprechende Datum, da ich pro Arbeitstag 8 Einträge habe.

Also etwa so:

    Arbeitsübersicht W45 2020
02.11.2020 Montag, 2. November 2020 HKr HKbe HKko Bel Kb Kf Tit mm Bag Stance HKP N&T FD PTex Konstruktion Spezial Form Keil Termin
02.11.2020 S x x x x x x x 0,4 2 550/590 SS Med/Med   white BX-Titanal-TC3W (bb22.1.16) Ptex     01.09.2020
02.11.2020 BX5 x x x x x x x 0,4 2 540 SS ADN/Med   Cvlies BX-Titanal-TC3W (bb22.1.16) Perlatec     02.09.2020
02.11.2020                                        
02.11.2020                                        
02.11.2020                                        
02.11.2020                                        
02.11.2020                                        
02.11.2020                                        
03.11.2020 Dienstag, 3. November 2020 HKr HKbe HKko Bel Kb Kf Tit mm Bag Stance HKP N&T FD PTex Konstruktion Spezial Form Keil Termin
03.11.2020 A x x x x x x x 0,4 2 550/590 ST Med/Comp   white BX/FX Carbon/Titanal Männer (bb6.3.12) Ptex, TC3     01.09.2020
03.11.2020 B x x x x x x x 0,4 1 540 SS Med/Med   Cvlies BX-Titanal-TC3W (bb22.1.16)       02.09.2020
03.11.2020 C x x x x x x x 0,4 2 470 +AF 01     black RG/RS Titanal (bb21.2.20)     280 02.09.2020

Ich möchte einen Zeile aus der Kalenderwoche 45 auf den 1. Dezember in der Kalenderwoche 49 verschieben. Anbei der Code für die Prüf-Funktion.

Besten Dank schon im Voraus Matthias

'======================================================================================================================
' Datum prüfen ob frei
'======================================================================================================================
Private Sub Pruefen_Click()
    Dim WorkYear    As String
    Dim SearchDate  As Date
    Dim WYk         As String
    Dim WMk         As String
    Dim KW          As Date
    Dim WsNew       As String
    Dim DIN_KW      As String
    Dim ZelleDate   As Range
    Dim rngDate     As Range
    Dim zNew        As Long
    Dim RowCount    As Integer
    Dim DayCount    As Integer
    
    WorkYear = Worksheets("Grunddaten").Range("C3")
    SearchDate = g_datCalendarDate
    
    ' SuchDatum prüfen und Name des Blattes bestimmen
    'If Year(SearchDate) <> WorkYear Then
    '    Call MsgBox("Ungültiges Jahr!")
    '    Exit Sub
    'End If
    
    ' Name des WorkSheets bestimmen
    KW = 4 + SearchDate - Weekday(SearchDate, 2)
    DIN_KW = (KW - DateSerial(Year(KW), 1, -6)) \ 7
    WYk = Right(SearchDate, 2)
    WMk = Month(SearchDate)
'    WsNew = WYk & "-" & WMk & "-" & "W" & DIN_KW (Neu wegen Sortiereung der Worksheets
    Select Case WMk
    Case 1, 2, 3, 4, 5, 6, 7, 8, 9
        WMk = "0" & WMk
    End Select
    Select Case DIN_KW
    Case 1, 2, 3, 4, 5, 6, 7, 8, 9
        DIN_KW = "0" & DIN_KW
    End Select
    
    WsNew = WYk & "-" & WMk & "-" & "W" & DIN_KW
    
    Set rngDate = Worksheets(WsNew).Range("A3:A50")
    Set ZelleDate = Suchen(Me.g_datCalendarDate, rngDate)
    
    If Not ZelleDate Is Nothing Then
        zNew = ZelleDate.Row
        RowCount = 0
        With Worksheets(WsNew)
            For DayCount = 1 To 9
                If WorksheetFunction.CountBlank(.Range(.Cells(zNew, 2), .Cells(zNew, 21))) = 20 Then
                    RowCount = RowCount + 1
                End If
                zNew = zNew + 1
            Next DayCount
            If RowCount <> 0 Then
                Call MsgBox("Dieser Tag hat noch '" & RowCount & "' Einträge zur Verfügung!")
            Else
                Call MsgBox("Verschiebungsdatum ist schon voll belegt!")
            End If
        End With
    Else
        Call MsgBox("Verschiebungsdatum '" & g_datCalendarDate & "' nicht gefunden!")
    End If
    
End Sub

 

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot LaufzeitFehler '9' bei Zeile kopieren
25.10.2020 12:39:06 Matthias
NotSolved
25.10.2020 12:50:57 ralf_b
NotSolved
25.10.2020 17:31:01 Gast68796
NotSolved
14.11.2020 15:54:53 Gast86382
NotSolved