Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
992to996
992to996
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Sortieren

Sortieren
17.07.2008 10:58:49
Konrad
Hallo an alle VBA-Experten!
Bitte um einen Hinweis zur Lösung folgendes Problems:
ich habe eine Datenbank die in der ersten Zeile eine Beschreibung der Spalten beinhaltet. Mein Ziel ist dass ich jene Zeilen die dem Auswahlkriterium "x" in Spalte "C" entsprechen, ausschneide, die dadurch entstandenen Leerzeilen lösche, und die ausgeschnittenen Zeilen am Ende der Tabelle (nach Einfügen einer Leerzeile) wieder einfüge.
Könnte mir jemand dabei weiterhelfen?
vielen Dank im Voraus
Konrad

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Sortieren
17.07.2008 12:45:00
Klaus
Hallo Konrad,
Warum so kompliziert? Daten - Sortieren - nach Spalte C.
Für den VBA-Code kannst du diesen Vorgang per Makrorekorder aufzeichnen.
Grüße,
Klaus M.vdT.

AW: Sortieren
17.07.2008 12:54:43
fcs
Hallo Konrad,
als erster Ansatz:

Sub SuchenNachHinten()
Dim wks As Worksheet, Zeile As Long, ZeileLetzte
Dim varSuchen
varSuchen = InputBox(Prompt:="Suchbegriff Spalte C:")
If varSuchen = "" Then Exit Sub
Set wks = ActiveSheet
Application.ScreenUpdating = False
With wks
ZeileLetzte = .Cells.SpecialCells(xlCellTypeLastCell).Row
For Zeile = ZeileLetzte To 2 Step -1
If .Cells(Zeile, 3).Value = varSuchen Then
.Rows(Zeile).Cut Destination:=.Cells(ZeileLetzte + 1, 1)
.Rows(Zeile).Delete shift:=xlShiftUp
End If
Next
End With
Application.ScreenUpdating = True
End Sub


Gruß
Franz

Anzeige
AW: Sortieren
17.07.2008 13:09:25
Konrad
Hallo Franz, vielen Dank!
Nachdem ich wirklich ein absoluter Anfänger bin, möchte ich Dich noch kurz fragen, wie das Makro lauten würde wenn der gesuchte Wert immer derselbe ist (in meinem Fall die Zahl 1460), also ohne Verwendung der Input-Box. Zudem möchte ich, bevor die Auflistung der Datensätze mit Inhalt "1460" beginnt, noch eine Leerzeile einfügen.
Könntest Du mir noch einen Hinweis dazu geben?
Vielen herzlichen Dank!

AW: Sortieren
17.07.2008 17:38:00
fcs
Hallo Konrad,
du muss 2 Zeilen anpassen:

Sub SuchenNachHinten()
Dim wks As Worksheet, Zeile As Long, ZeileLetzte
Dim varSuchen
varSuchen = 1460  '### geändert
If varSuchen = "" Then Exit Sub
Set wks = ActiveSheet
Application.ScreenUpdating = False
With wks
ZeileLetzte = .Cells.SpecialCells(xlCellTypeLastCell).Row
For Zeile = ZeileLetzte To 2 Step -1
If .Cells(Zeile, 3).Value = varSuchen Then
.Rows(Zeile).Cut Destination:=.Cells(ZeileLetzte + 2, 1) '#### geändert
.Rows(Zeile).Delete shift:=xlShiftUp
End If
Next
End With
Application.ScreenUpdating = True
End Sub


Gruß
Franz

Anzeige
AW: Sortieren
17.07.2008 17:54:51
Konrad
Hallo Franz,
habe gerade das Makro ausprobiert, es funktioniert aber leider nicht. Die Daten werden nicht mehr geordnet. Weißt du woran das liegen könnte?
Gruß Konrad

AW: Sortieren
18.07.2008 10:56:47
fcs
Hallo Konrad,
evtl. steht die Zahl als Text in den Zellen.
Setze die Zahl in Anführungszeichen.
varSuchen = "1460"
Gruß
Franz

AW: Sortieren
18.07.2008 17:37:00
Konrad
Hallo Franz,
jetzt funktioniert's! Tut mir echt leid, dass ich dich mit solchen Lappalien belästigt habe. Es ist immer wieder schön dass einem auch bei solchen Problemchen jemand auf die Sprünge hilft...
Vielen herzlichen Dank!
Schönes Wochenende
Gruß Konrad
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige