Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1664to1668
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
Inhaltsverzeichnis

Laufzeitfehler 13

Laufzeitfehler 13
21.12.2018 09:11:17
Matthias
Hallo Wissende,
wenn ich folgenden Code ausführe
bekomme ich den Fehler Laufzeitfehler 13
Danke im Voraus fürs Helfen
SG
Matthias
Sub Übertrag()
Application.ScreenUpdating = False
' Tabelle: Quelle
' Tabelle Ziel: Ziel
' Kopiert die SoD-Konflikte von Quelle in das Dashboard
Const Blatt1 = "Quelle"           ' Source
Const Blatt2 = "Ziel" ' Ziel
Dim I As Integer
Dim iAnz As Integer
Dim letzte As Long
' ermittelt die letzte befüllte Zelle
Worksheets("Ziel").Activate
letzte = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
' ermittelt die letzte befüllte Zelle
' Markiert und löscht den Bereich
Worksheets("Ziel").Range("A13:AA" & letzte).Clear
' Kopiert die Überschrift
Worksheets("Quelle").Range("A3:E3").Copy
Worksheets("Ziel").Activate
Range("A3").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Worksheets("Ziel").Range("A13").Activate
Sheets(Blatt1).Activate
Range("A10").Select
iAnz = 0
I = 0
Do Until I = ActiveSheet.UsedRange.Rows.Count
If ActiveCell.Value = Range("B" & 5).Value Then
Selection.EntireRow.Copy
Sheets(Blatt2).Activate
ActiveSheet.Paste
ActiveCell.Offset(1, 0).Select
Sheets(Blatt1).Select
ActiveCell.Offset(1, 0).Select
iAnz = iAnz + 1
Else
ActiveCell.Offset(1, 0).Select
End If
I = I + 1
Loop
MsgBox "Es wurden " & iAnz & " Sätze übertragen"
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler 13
21.12.2018 09:28:33
Werner
Hallo Matthias,
einige Anmerkungen:
1. Select und Activate im Code ist nicht nötig
2. in welcher Codezeile wird denn der Fehler ausgelöst
3. Beschreib doch mal bitte was der Code machen soll
4. Lade doch mal deine Mappe hier hoch
Gruß Werner
AW: Laufzeitfehler 13
21.12.2018 09:46:02
Nepumuk
Hallo Matthias,
kann es sein, dass sich in Spalte A Formeln befinden die ab und zu einen Fehlerwert (#NV, #WERT, #DIV/0, ….) enthalten? Wenn ja, dann musst du dies mit der Funktion IsError abfangen.
Gruß
Nepumuk
Anzeige
AW: Laufzeitfehler 13
21.12.2018 10:15:04
Matthias
Hallo Nepumuk,
du hast Recht in der Spalte A befindet sich eine Formel :O)
Kannst du mir sagen, wo ich den Fehler abfangen muss
- in der Formel
oder
- im Makro
SG
Matthias
AW: Laufzeitfehler 13
21.12.2018 10:17:27
Daniel
Oder dadurch, dass man .Value durch .Text ersetzt.
Oder man schreibt die Formel in den Zellen so um, dass kein Fehlerwert mehr als Ergebnis möglich ist. (Wennfehler)
Gruß Daniel
AW: Laufzeitfehler 13
23.12.2018 14:20:39
Piet
Hallo
Sorry, ich nehme an der Code wurde mit Makro Recorder aufgezeichnet. man kann ihn professioneler gestalten.
Anbei ein Lösungsversuch von mir, würde mich freuen wenn es klappt.
Für VBA Anfaenger verwirrend ist die Kombination von If mit ElseIf um Fehler abzufangen!! Was passiert da?
Ist die If Bedingung erfüllt - passiert garnichts! Die ElseIf wird aber - NICHT mehr ausgeführt! Ein simpler Trick!
Der Rest ist bekannt, aber auf Select, vor allem auf Blatt Selekt kann man verzichten!! Ich nahme hier lieber For Next als Do Loop, weil es sich einfach von selbst anbietet. Ich hoffe das Makro ist so simpel geschrieben das du es verstehen kannst. Ansonsten freue dich wenn es funktioniert.
Frohe Weihnachten und ein gutes neues Jahr ...
mfg Piet
Sub Übertrag()
Application.ScreenUpdating = False
' Tabelle: Quelle
' Tabelle Ziel: Ziel
' Kopiert die SoD-Konflikte von Quelle in das Dashboard
Const Blatt1 = "Quelle"           ' Source
Const Blatt2 = "Ziel" ' Ziel
Dim I As Integer
Dim iAnz As Integer
Dim letzte As Long
' löscht den UsedRange der Ziel Tabelle
Worksheets("Ziel").UsedRange.Clear
'** diese Variante laesst die 1. Zeiele als Überschrifts bestehen !!
Worksheets("Ziel").UsedRange.Offset(1#).Clear
' Kopiert die Überschrift  (direkt dranhaengen!!
Worksheets("Quelle").Range("A3:E3").Copy _
Worksheets("Ziel").Range("A3")
Sheets(Blatt2).Activate
z2 = ActiveSheet.ActiveCell.Row
Sheets(Blatt1).Activate
Range("A10").Select
For I = 10 To ActiveSheet.UsedRange.Rows.Count
'If InStr(Cells(I, 1), "#") Then
If IsError(Cells(I, 1)) Then
ElseIf Cells(I, 1) = Range("B5") Then
Rows(I).Copy
Sheets(Blatt2).Rows(x2).PasteSpecial xlPasteAll
z2 = z2 + 1
End If
Next I
Application.CutCopyMode = False
Application.ScreenUpdating = True
MsgBox "Es wurden " & iAnz & " Sätze übertragen"
End Sub

Anzeige
AW: Laufzeitfehler 13
27.12.2018 07:15:42
Matthias
Hallo Piet
leider funktioniert der Code nicht , bekomme
siehe Unten Zeile z2 = ActiveSheet.
eine Fehlermeldung Zeile
Meldung: Fehler beim Kompilieren
Variable nicht definiert
woran kann das liegen.
SG
Matthias
Sub Übertrag()
Application.ScreenUpdating = False
' Tabelle: Quelle
' Tabelle Ziel: Ziel
' Kopiert die SoD-Konflikte von Quelle in das Dashboard
Const Blatt1 = "Quelle"           ' Source
Const Blatt2 = "Ziel" ' Ziel
Dim I As Integer
Dim iAnz As Integer
Dim letzte As Long
' löscht den UsedRange der Ziel Tabelle
Worksheets("Ziel").UsedRange.Clear
'** diese Variante laesst die 1. Zeiele als Überschrifts bestehen !!
Worksheets("Ziel").UsedRange.Offset(1#).Clear
' Kopiert die Überschrift  (direkt dranhaengen!!
Worksheets("Quelle").Range("A3:E3").Copy _
Worksheets("Ziel").Range("A3")
Sheets(Blatt2).Activate
z2 = ActiveSheet.ActiveCell.Row
Sheets(Blatt1).Activate
Range("A10").Select
For I = 10 To ActiveSheet.UsedRange.Rows.Count
'If InStr(Cells(I, 1), "#") Then
If IsError(Cells(I, 1)) Then
ElseIf Cells(I, 1) = Range("B5") Then
Rows(I).Copy
Sheets(Blatt2).Rows(x2).PasteSpecial xlPasteAll
z2 = z2 + 1
End If
Next I
Application.CutCopyMode = False
Application.ScreenUpdating = True
MsgBox "Es wurden " & iAnz & " Sätze übertragen"
End Sub

Anzeige
AW: Laufzeitfehler 13
27.12.2018 08:32:33
Nepumuk
Hallo Matthias,
da ich deine Mappe nicht kenne, kann ich manche Zeilen nur erraten. Und bei einer steh ich auf dem Schlauch:
If .Cells(lngRow, 1).Value = .Range("B5").Value Then ' ?
bei dir:
If ActiveCell.Value = Range("B" & 5).Value Then
Teste mal (aber bitte in einer Kopie der Originalmappe !!!):
Option Explicit

Public Sub Übertrag()
    
    ' Kopiert die SoD-Konflikte von Quelle in das Dashboard
    
    Const SOURCE_SHEET As String = "Quelle"
    Const TARGET_SHEET As String = "Ziel"
    
    Dim lngRow As Long, lngCopyRow As Long
    
    Application.ScreenUpdating = False
    
    ' löscht den UsedRange der Ziel Tabelle
    With Worksheets(TARGET_SHEET)
        Call .Range(.Cells(3, 1), .Cells( _
            .Cells(.Rows.Count, 1).End(xlUp).Row, 27)).Clear
    End With
    
    ' Kopiert die Überschrift (direkt dranhaengen!!
    Call Worksheets(SOURCE_SHEET).Range("A3:E3").Copy( _
        Destination:=Worksheets(TARGET_SHEET).Range("A3"))
    
    lngCopyRow = 4
    
    With Worksheets(SOURCE_SHEET)
        
        For lngRow = 10 To .Cells(.Rows.Count, 1).End(xlUp).Row
            
            If Not IsError(.Cells(lngRow, 1).Value) Then
                
                If .Cells(lngRow, 1).Value = .Range("B5").Value Then ' ?
                    
                    Call .Rows(lngRow).Copy(Destination:= _
                        Sheets(TARGET_SHEET).Rows(lngCopyRow))
                    
                    lngCopyRow = lngCopyRow + 1
                    
                End If
            End If
        Next lngRow
    End With
    
    Application.ScreenUpdating = True
    
    Call MsgBox("Es wurden " & CStr(lngCopyRow - 3) & " Datensätze übertragen", _
        vbInformation, "Information")
    
End Sub

Gruß
Nepumuk
Anzeige
AW: Laufzeitfehler 13
27.12.2018 11:55:19
Matthias
Hi,
jetzt bekomme ich
einen Laufzeitfehler 1004
?
SG
Matthias
AW: Laufzeitfehler 13
27.12.2018 12:17:53
Piet
Hallo Matthias
kannst du uns bitte eine Beispieldatei hochladen, mit anonymen Daten. Am einfachsten findet man den Fehler wenn man die Datei sieht. Und bitte mit dem Original Makro das den Fehler verursacht.
Denk bitte daran das dein Thread bald zu Ende ist. Dann können wir dir nicht mehr antworten! Er geht ins Archiv!
mfg Piet
AW: Laufzeitfehler 13
27.12.2018 12:35:13
Matthias
Hallo,
der Upload funktioniert nicht.
SG
Matthias
Bedingungen beachtet?
27.12.2018 13:04:47
Matthias
Hi
Hast Du das auch beachtet ?
Die Größe der Datei ist auf etwa 300 KB begrenzt, bitte beachten. Die hochzuladende Datei darf sich nicht in einem Verzeichnis mit einem Leerzeichen im Namen oder mit einer sehr grossen Pfadtiefe befinden. Zudem darf die Datei selbst keine Leerzeichen im Namen beinhalten. Wenn der Upload nicht funktioniert, verschieben Sie die Datei in ein Root-Verzeichnis wie z.B. C:\ und versuchen es noch einmal.
Gruß Matthias
Anzeige
AW: Bedingungen beachtet?
27.12.2018 13:43:33
Piet
Hallo Matthias
die Problem sind mir bekannt, da kaempfe ich auch mit. Und du must vor dem weiterleiten an den Server das Haeckchen für Datenschutz aktivieren. Sonst klappt es nicht.
Ich brauche eigentlich nur wenige Zeilen mit Daten in einer Test Datei. Kopiere die Datei, nenne sie einfach nur "Test.xlsm", fertig.
Der Server vergibt ohnehin seine eigene ID Nummer, da verschwindet der Name sowieso! Zum abspecken bitte alle Zeilen ab 20-30 als ganze Zeile bis unten löschen und neu speichern. Dann verkleinert sich der UsedRange auf 20-30 Zeilen. Das sollte für 300 kb reichen.
Probier es bitte so .. Viel Glück!
mfg Piet
Anzeige
AW: Bedingungen beachtet?
27.12.2018 13:50:59
Piet
Nachtrag
am besten noch mal einen neuen Thread aufmachen, dieer faellt bald aus dem Server raus!!
Dann kann ich nicht mehr antworten. Am besten direkt einen neuen Thread ins Forum stellen
mfg Piet
AW: Bedingungen beachtet?
27.12.2018 13:53:59
Matthias
Hallo Piet,
vielen Dank für deine Hilfe, aber ich bekomme die Datei nicht
sinnvoll gekürzt, so dass diese den Kriterien eines Uploads
gerecht wird.
Ich weiss jetzt auch nicht, wie ich weiter machen soll?
SG
Matthias
AW: Bedingungen beachtet?
27.12.2018 13:54:00
Matthias
Hallo Piet,
vielen Dank für deine Hilfe, aber ich bekomme die Datei nicht
sinnvoll gekürzt, so dass diese den Kriterien eines Uploads
gerecht wird.
Ich weiss jetzt auch nicht, wie ich weiter machen soll?
SG
Matthias
Anzeige
AW: Laufzeitfehler 13
27.12.2018 14:01:35
Piet
letzter Versuch
Sorry das ich das hier sage, es gibt das Clever Excel Forum. Da gibt es keine Begrenzung von Dateien, und man kann eine Datei auch vertraulich auf die E-Mail Adresse des Ratgeber schicken!
mfg Piet
AW: Laufzeitfehler 13
28.12.2018 07:06:44
Matthias
Hallo Piet,
gerne sende ich dir die betreffende Datei,
wenn du mir deine E-Mail gibst.
Cleveres Excel Forum
SG
Matthias

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige