Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
800to804
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
800to804
800to804
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Blöcke rausschneiden

Blöcke rausschneiden
13.09.2006 09:36:46
artur
Guten Morgen alle zusammen,
eine kleines Problemchen:
Ich habe eine Tabelle in der sozusagen verschiedene Datenblöcken hintereinander dargestellt werden. Nun haben manche Blöcke als Saldo 0 und andere haben ein Saldo.
Meine Frage ists nun, ob es möglich sei, diese Tabelle mit einem Makro durchzulaufen und alle Blöcke mit Saldo 0 zu löschen und alle mit einem Saldo größer 0 stehen zu lassen.
Die Blöcke gehen alle von einem "Auftrag" bis "Saldo".
Hier mal eine Beispieldatei:
https://www.herber.de/bbs/user/36639.xls
Was ich möchte ist im Endeffekt nur Blöcke mit Saldo da stehen zu haben, um diese dann weiter auszuwerten. Dies ist nur ein Auszug aus der Datei, welche sehr viel größer ist.
Vielen Dank im Voraus
mfg
artur

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Blöcke rausschneiden
13.09.2006 11:26:26
Jan3
Hi artur,
Bei Deinem Level in VBA und dem kleinen Problemchen, wo besteht da die Schwierigkeit die Aufgabe zu lösen? Welche Lösungsansätze hast Du?
Jan
AW: Blöcke rausschneiden
13.09.2006 12:01:07
artur
Ja, einen kleinen Ansatz habe ich schon , jedoch komme ich irgendwie nicht drauf, wie man diesen block definieren kann.
Also mit diesem Marko schneidet der halt nur die Zeile mit 0 raus nicht die dazugehöregen obendrüber

Sub Test1()
Dim lZeile_1, Merker  As Long
Dim lLetzte_1  As Long
Dim x, i, a As Long
Worksheets("Tabelle1").Activate
Set WkSh_1 = Worksheets("Tabelle1")
lLetzte_1 = WkSh_1.Range("A65536").End(xlUp).Row
For lZeile_1 = 1 To lLetzte_1
If WkSh_1.Range("A" & lZeile_1).Value = "*** Saldo              Auftrag" And WkSh_1.Range("M" & lZeile_1).Value = 0 Then
Rows(lZeile_1).Select
Selection.Delete Shift:=xlUp
End If
Next lZeile_1
End Sub

Kann mir da jemand helfen wie ist das entsprechend ergänzen kann.
Vielen Dank im voraus !!
mfg
artur
Anzeige
AW: Blöcke rausschneiden
13.09.2006 12:07:17
Herbert
hallo Artur,
das würde in etwa so gehen:

Public Sub Bereiche_löschen()
Dim i%, lz%, x%, ez%
lz = Cells(Rows.Count, 1).End(xlUp).Row
On Error GoTo errEnde
Application.ScreenUpdating = False
For i = 1 To lz
    If Cells(i, 1) = "*** Saldo              Auftrag" _
       And Cells(i, 13) = 0 Then
        For x = i To 1 Step -1
            If Cells(x, 1) = "Auftrag" Then
                ez = Cells(x, 1).Row
                Exit For
            End If
        Next
        Rows(ez & ":" & i).Delete Shift:=xlUp
    End If
Next
errEnde:
Application.ScreenUpdating = True
End Sub
     gruß Herbert
Anzeige
AW: Blöcke rausschneiden
13.09.2006 15:29:25
artur
Hallo Herbert,
vielen Dank für die Hilfe, funktioniert SUPER!! Wieder mal was gelernt.
Jetzt noch eine Frage, wie würde der Befehl lauten um über eine Inpubox die Spalte anzugeben. Habe folgendes gebastelt.
Dim f As String
f = InputBox("...")
If Cells(i, 1) = "*** Saldo Auftrag" And Cells(i, f).Value = "0" Then
Ist nur der Auszug , d.h. über die Box soll es möglich sein die Spalte anzugeben, in der geprüft werden soll.
Vielen Dank
mfg
artur
AW: Blöcke rausschneiden
13.09.2006 18:23:39
Herbert
hier ist ja die Spaltennummer angegeben,
daher muß man eine Zahl deklarieren:
Dim f As Byte
f = InputBox("Bitte Spalte angeben", "Titel")
gruß Herbert
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige