|
Zeile löschen , wenn in Spalte A eine "0" ist
|
| Autor |
Nachricht |
Rafking
Gast
Verfasst am: 08. Sep 2006, 08:07 Rufname:
|
|
| |
|
ich bin auf der suche nach einem makro was alle zeilen löscht die den wert "0" in spalte A haben, habe ein makro was alle zeilen löscht die leer sind doch das bringt mich kaum weiter....
vllt. kennst sich jeamdn damit aus, hier mal das makro:
Code:
Sub Leerzeilenlöschen()
' Leerzeilen löschen einschließlich der Zeilen die entstehen wenn Zeilen am ende
' gelöscht werden, auch Leerzeilen in der Tabelle werden gelöscht
' von Wolf.W.Radzinski
' es wurden nicht alle Leerzeilen in einer Datei erkannt
' darum Ergänzung
On Error Resume Next
Dim r As Range
Dim anz As Long
Dim c_ges As Long
Dim col As New Collection
c_ges = ActiveSheet.UsedRange.Column + ActiveSheet.UsedRange.Columns.Count - 1
For Each r In ActiveSheet.UsedRange.EntireRow
anz = 0
' ******** Hajo.Ziplies@web.de
Dim I As Byte
Dim L As Byte
L = 0
For I = 1 To 20
If Cells(r.Row, I) <> "" Then
L = 1
Exit For
End If
Next I
If L = 0 Then col.Add r
' ******
' anz = r.SpecialCells(xlCellTypeBlanks).Count
' If anz >= c_ges Then col.Add r
Next
For Each r In col
r.Delete
Next
End Sub
hat da jeamnd eine idee ?
danke im vorraus
|
|
<Raider>
Schleifenbastler^^

Verfasst am: 08. Sep 2006, 09:02 Rufname: Daniel
Wohnort: BaWü
|
| |
| |
|
Hi,
versuchs doch mal so:
| Code: | Sub loeschen()
Dim lZeile As Long
For lZeile = 20 To 1 Step -1
If Cells(lZeile, 1) = "0" Then
Rows(lZeile).Delete Shift:=xlUp
ElseIf Cells(lZeile, 1) = "" Then
Rows(lZeile).Delete Shift:=xlUp
End If
Next lZeile
End Sub |
_________________ MfG Daniel
Auch aus Steinen, die einem in den Weg gelegt werden, kann man Schönes bauen.
(Johann Wolfgang von Goethe)
|
|
Gast
Verfasst am: 08. Sep 2006, 09:30 Rufname:
|
|
| |
|
danke erstmal,
funktioniert auch, nur das er nur "paar" zeilen weg macht ich möchte das über das hanze tabellenblatt laufen lassen, ich eine eine artikelliste mit ca 500 positionen davon sind ca 450 auf "0" so muss ich das macro solange drücken bis alles weg is was auf 0 ist, gibts da nicht ne möglichkeit das macro so lande auszuführen bis er keine "0" mehr findet ?
|
|
<Raider>
Schleifenbastler^^

Verfasst am: 08. Sep 2006, 09:32 Rufname: Daniel
Wohnort: BaWü
|
|
| |
|
Bitte schön
| Code: | Sub loeschen()
Dim lZeile As Long
For lZeile = 500 To 1 Step -1 'die 500 kannst du mit der Menge an Spalten ersetzen, die du benötigst
If Cells(lZeile, 1) = "0" Then
Rows(lZeile).Delete Shift:=xlUp
ElseIf Cells(lZeile, 1) = "" Then
Rows(lZeile).Delete Shift:=xlUp
End If
Next lZeile
End Sub |
_________________ MfG Daniel
Auch aus Steinen, die einem in den Weg gelegt werden, kann man Schönes bauen.
(Johann Wolfgang von Goethe)
|
|
Gast
Verfasst am: 08. Sep 2006, 09:53 Rufname:
|
| |
| |
|
danke, hab ich auch grad gesehn, aber trozdem danke !
gibts vllt ne möglichkeit das automatisch, bzw dynamisch aus der Tabelle zu holn ?
so das er erstmal abfragt wie viele zeilen die tabelle hat...?
danke
|
|
Super_Jule
Gast
Verfasst am: 08. Sep 2006, 09:57 Rufname:
|
|
| |
|
Eine Lösung mit einer gewissen Eleganz wäre doch auch das alles per AutoFilter zu filtern und alles zu löschen, ungefähr so:
| Code: |
Cells.Select
Selection.AutoFilter
AutoFilter Filter,Field1 = "0" '(oder wie das genau heisst ;) )
rows(2:10000).Select
Selection.delete
Cells.Select
Selection.AutoFilter 'Auto Filter wieder ausschalten
|
Das war jetzt nur ausm Kopf, wird also nicht sofort funktionieren.
Aber du kannst ja mal mit dem Ansatz probieren.
Die Variante hat eben den vorteil, dass sie Superschnell ist
Grüße
Super Jule[/code]
|
|
<Raider>
Schleifenbastler^^

Verfasst am: 08. Sep 2006, 10:52 Rufname: Daniel
Wohnort: BaWü
|
|
| |
|
eine Excel-Datei hat immer 65536 zeilen.
Wenn du diese Zahl einsetzt, wirst du auf jeden Fall alle löschen.
_________________ MfG Daniel
Auch aus Steinen, die einem in den Weg gelegt werden, kann man Schönes bauen.
(Johann Wolfgang von Goethe)
|
|
<Raider>
Schleifenbastler^^

Verfasst am: 08. Sep 2006, 10:53 Rufname: Daniel
Wohnort: BaWü
|
|
| |
|
eine Excel-Datei hat immer 65536 zeilen.
Wenn du diese Zahl einsetzt, wirst du auf jeden Fall alle löschen.
_________________ MfG Daniel
Auch aus Steinen, die einem in den Weg gelegt werden, kann man Schönes bauen.
(Johann Wolfgang von Goethe)
|
|
Gast
Verfasst am: 08. Sep 2006, 11:04 Rufname:
|
|
| |
|
k, das makro funzt super ^^
danke nochmal
|
|
Gast
Verfasst am: 08. Sep 2006, 11:11 Rufname:
|
|
| |
|
nur nochmal ne frage kann man in excel nen statusfenster, art massagebox die sich auch aktuallisiert einbauen ?
und noch eine frage,
kann man excel (vllt. über macro)
das gewählte tabellenblatt unter einer random nummer ( 6stellig) im dateinamen seperat abspeichern ?
z.B. Wunder_(random nummer).xls
wenns geht nur das Tabellenbaltt was ausgewählt ist , nicht alle tabellenblätter die in der datei sind
danke ^^
|
|
<Raider>
Schleifenbastler^^

Verfasst am: 08. Sep 2006, 11:19 Rufname: Daniel
Wohnort: BaWü
|
|
| |
|
Mit Makros sind fast keine Grenzen gesetzt, man muss es nur beherrschen und falls Probleme auftauchen Leute kennen die einen Unterstützen.
_________________ MfG Daniel
Auch aus Steinen, die einem in den Weg gelegt werden, kann man Schönes bauen.
(Johann Wolfgang von Goethe)
|
|
joseeger
Gast
Verfasst am: 09. Sep 2006, 12:53 Rufname:
|
|
| |
|
Sub sheet_save_as_workbook()
On Error GoTo errorhandl
Set act = ActiveSheet
act.Copy' erstellt neue Arbeitsmappe aus dem aktiven Tabellenblatt
Set neu = Workbooks(Workbooks.Count)
'neu.SaveAs Filename:=act.Name & Mid(CStr(CDbl(Now()) * 10000), 4, 6)'Nummer aus Zeitstempel generieren
nummer = 1
neuname = Left(act.Parent.Name, Len(act.Parent.Name) - 4) _
& Format(nummer, "00000#") & Right(act.Parent.Name, 4)
Do 'feststellen ob Datei mit diesem Namen schon existiert
Open neuname For Input As #1
Close #1
nummer = nummer + 1
neuname = Left(act.Parent.Name, Len(act.Parent.Name) - 4) _
& Format(nummer, "00000#") & Right(act.Parent.Name, 4)
DoEvents ' in der Schleife Benutzereingriffe zulassen. z.B. Strg+"C" für unterbrechen
If nummer > 999999 Then
MsgBox ("Die maximale anzahl der Dateinamen ist erreicht. Speichen Sie die Ursprungsdatei unter einem anderen Namen ab")
End If
Loop
On Error GoTo 0
Exit Sub
errorhandl:
If Err = 53 Then 'Datei nicht gefunden
neu.SaveAs Filename:=neuname
End If
End Sub
|
|
d.lutz
Gast
Verfasst am: 01. März 2007, 16:10 Rufname:
|
| |
| Version: Office XP (2002) |
|
Hallo zusammen,
ich bin auf der Suche nach einer Lösung für ein ähnliches Problem.
Ich hoffe, ihr könnt mir weiterhelfen.
In meiner Tabelle kommen Zeilen vor, an deren Anfang nur Zahlen stehen. Diese Zeilen möchte ich löschen.
Von Hand bin ich immer Stunden damit beschäftigt.
Da müsste es doch auch eine automatische Lösung geben, oder?
Ich hab schon mal versucht, das Script von oben zu nehmen, und die "0" zu ersetzen, aber damit klappt es irgendwie nicht.
Kann jemand von euch mir helfen?
Vielen Dank, Lutz
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum nicht posten Du kannst Dateien in diesem Forum herunterladen
|
|
|
|
| Verwandte Themen |
| Forum / Themen |
Antworten |
Autor |
Aufrufe |
Letzter Beitrag |
 |
Excel Formeln: Eine spalte in einer Zeile ausgeben |
2 |
Schoki |
499 |
11. Jan 2005, 17:12 Schoki  |
 |
Excel Formeln: Erst Spalte dann wert suchen zeile ausgeben |
2 |
Kai2k |
1305 |
07. Jan 2005, 12:10 Kai2k  |
 |
Excel Formeln: Suche Formel, welche Spalte nur bis zum akt. Datum berechnet |
7 |
Sveny |
700 |
04. Jan 2005, 21:45 Sveny  |
 |
Excel Formeln: HIFE!!! gewisse zeilen löschen |
2 |
Stevie0130 |
1097 |
12. Dez 2004, 18:35 Gast  |
 |
Excel Formeln: fortlaufende zahl in spalte - funktion? |
2 |
lifius |
991 |
10. Dez 2004, 19:45 lifius  |
 |
Excel Formeln: Werte aus 3 Spalten nebeneinander in 1 Spalte |
2 |
Aloha |
1191 |
02. Nov 2004, 23:31 Gast  |
 |
Excel Formeln: Ergebnisse der Formel in gleicher Spalte anzeigen |
3 |
Udo Riepold |
787 |
09. Okt 2004, 11:05 Udo Riepold  |
 |
Excel Formeln: Leerzeichen in Zelle löschen |
3 |
pkegelking |
687 |
01. Okt 2004, 11:57 pkegelking  |
 |
Excel Formeln: Letzten drei Ziffern einer Spalte löschen?? |
1 |
Ben |
392 |
23. Sep 2004, 13:02 ae  |
 |
Excel Formeln: Unterschiedliche Formate in einer Spalte |
12 |
menzek |
484 |
07. Sep 2004, 18:41 Menzek  |
 |
Excel Formeln: "0" durch nix ersetzen |
11 |
Gast |
689 |
31. Aug 2004, 09:43 Gast  |
 |
Excel Formeln: Daten aus div. Tabellen in einer Spalte... |
11 |
achimtausa |
1092 |
09. Aug 2004, 11:33 Arnim  |
| |
|