Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
332to336
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
332to336
332to336
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zeile 3 in Excel tabelle wird gelöscht

Zeile 3 in Excel tabelle wird gelöscht
10.11.2003 15:23:18
chrisg
Hallo Excel-Freaks!

Habe ein kleines Problem mit einem VBA-Script.

Es sollen werte aus einer Tabelle ausgelesen werden und dann in einer neuen Tabelle aufgelistet werden, wenn Bedingungen erfüllt sind.

Funktioniert auch prima, allerdings steht in der Neuen Tabelle in Zeile 1 der Tabellen-Kopf (Spaltenüberschriften).

Die soll er ja vor dem Eintragen der Werte nicht löschen.

Der Code dazu sieht so aus.


Sub Auszahlung()
Dim wks As Worksheet, wksTarget As Worksheet
Dim iRow As Integer, iRowT As Integer, lRow As Integer, iCol As Integer, _
Name As String
Application.ScreenUpdating = False
Set wks = Sheets("Übersicht_Klassifizierer")
Set wksTarget = Sheets("Auszahlung_Klassifizierer")
wksTarget.Range(Cells(2, 1), Cells(Cells(65536, 1).End(xlUp).Row, 1)).EntireRow.Delete
iRowT = 2
iRow = 1
lRow = wks.Cells(65536, 2).End(xlUp).Row
With wks
For iRow = 5 To lRow
Name = .Cells(iRow, 2)
For iCol = 4 To Columns("cc").Column Step 7
If Not IsEmpty(.Cells(iRow, iCol)) Then
If .Cells(iRow, iCol) <= (Date - 14) And IsEmpty(.Cells(iRow, iCol + 5)) Then
wksTarget.Cells(iRowT, 1) = Name
wks.Range(.Cells(iRow, iCol - 1), .Cells(iRow, iCol + 5)).Copy
wksTarget.Cells(iRowT, 2).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'            Destination:=wksTarget.Cells(iRowT, 2)
iRowT = iRowT + 1
End If
End If
Next iCol
Next iRow
End With
Application.ScreenUpdating = True
Application.CutCopyMode = False
End Sub


Es sollen laut code ja nur jene Zeilen gelöscht werden, die ab der 2. Zeile Werte enthalten.

wksTarget.Range(Cells(2, 1), Cells(Cells(65536, 1).End(xlUp).Row, 1)).EntireRow.Delete

Einige male klappt alles wies soll, und beim 6. mal ist auf einmal der Tabellenkopf weg.

Kann mir jemand helfen!! ISt da wo ein Fehler drin?

Christian

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeile 3 in Excel tabelle wird gelöscht
10.11.2003 17:01:52
xXx
Hallo,
du musst den Fall, dass nur Zeile 1 da ist abfangen:
leZeile=wksTarget.Cells(65536,1).End(xlUp).Row
If leZeile>1 then
wksTarget.Range(cells(2,1),Cells(leZeile,1).EntireRow.Delete
End If

Gruß aus'm Pott
Udo
http://www.excelerator.de

P.S.Das Forum lebt auch von den Rückmeldungen der Frager an die Antworter.
AW: Zeile 3 in Excel tabelle wird gelöscht
10.11.2003 17:06:55
ChrisL
Hi Christian

Ist schwer nachzuvollziehen. Habe aber folgende Vermutung.

Wenn lediglich der Title Zeile 1 vorhanden ist, die Spalte A2:A-n aber leer ist, dann gibt dir Cells(65536, 1).End(xlUp).Row die Zeile 1 als Resultat aus.

Wie wärs wenn du es mal so...
Rows("2:65536").EntireRow.Delete
... versuchst. Hat m.E. in Bezug auf die Performance keinen Einfluss.

Gruss
Chris
Anzeige
AW: Zeile 3 in Excel tabelle wird gelöscht
12.11.2003 08:22:02
Chrisg
Hallo ChrisL, Hallo xXx!

Danke für Eure promte Hilfe.
Sorry daß ich mich nicht früher bedankt habe, war dienstlich verhindert.

Grüße aus Niederösterreich

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige