Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1024to1028
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

ganze Zeile löschen mit VAriable

ganze Zeile löschen mit VAriable
17.11.2008 12:37:00
angeldust
Hallo,
ich möchte eine gewünschte Zeile ganz löschen:
Tabelle1.Activate
Rows().Select
Selection.Delete Shift:=xlUp
das will er nicht zeigt, dass die Syntax bei der 2ten Zeile also Rows().Select
falsch sei , davor wird der zeile die eine globale Var. ist ein Wert zugeordnet zB 2
hmmm was mache ich falsch?
Danke sehr

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ganze Zeile löschen mit VAriable
17.11.2008 12:38:42
Hajo_Zi
Hallo Nick,
Excel ist ein vielseitiges Programm und man kann viele Probleme damit lösen. Jede positive Seite hat aber auch negative Aspekte - einer davon ist im Makrorecorder enthalten.
Die Bücher, die es zu Excel VBA gibt, erklären viele Funktionen, aber ich habe bisher nur in einem gelesen, dass der vom Makrorecorder aufgezeichnete Code bereinigt werden sollte.
Der Makrorecorder zeichnet alle Aktionen auf, u. a. auch das Auswählen einer Zelle oder eines eingebetteten Objektes (Bild, Diagramm, Zeichnungsobjekt usw.) dabei wird generell Select und Activate aufgezeichnet. Diese Befehle sind in VBA zu 99,9% nicht notwendig. Sie lassen den Bildschirm flackern und senken die Geschwindigkeit bei der Ausführung des Codes. Man sollte also schon von Beginn an bei der Programmierung darauf achten, solche Befehle zu vermeiden. Meine Erfahrung mit dem Vorsatz: Das mache ich später ist, man schreibt das Programm später meist komplett neu. Also kostest es nicht nur Rechnerzeit sondern auch Deine Zeit und ist Dir Deine Zeit so wenig Wert?
Zum Vergleich mit und ohne Select schau Dir auch mal diese Beispielarbeitsmappe an: mit und ohne select Auf meiner Homepage sind alle meine Beispiele ohne Select. Da kann man sich also einige Lösungsansätze zu diesem Thema ansehen.
Du hast keine Zeile angegeben.

Anzeige
AW: ganze Zeile löschen mit VAriable
17.11.2008 12:51:00
angeldust
doch doch irgendwie gings hier verloren ich habe
Rows(zeile).Select
wobei zeile1 eine glob. Var. ist die eienn wert bekommt zB 2
AW: ganze Zeile löschen mit VAriable
17.11.2008 12:59:00
Hajo_Zi
Hallo Nick,
Dann schreibe nur Rows(Zeile1).Delete
Gruß Hajo
AW: ganze Zeile löschen mit VAriable
17.11.2008 13:34:09
angeldust
hmmm klappt nicht so wie es mir gewünscht habe,
ne andere Sache vielleicht, wie merke ich mir in einer Variablen die Zeilen - Nummer,
in der ZB ein bestimmter Eintrag steht.
zB
man stelle sich vor die einzelnen Eingaben sind in jeweils einer Zelle , zeilenweise
zeilennummer ist akt. 1 es sieht so aus
name1 vorname1 email1 bla blab blabbbal
so ich will jetzt die zeilennummer der Zeile wo als email die email1 steht wie mach ich das? doch per select oder? und dann wie einer Var zuweisen?
vielleicht hilft ja das , danke
Anzeige
AW: ganze Zeile löschen mit VAriable
17.11.2008 13:38:28
Hajo_Zi
Hallo Nick,
zu select lese meinen ersten Beitrag. Das löst man mit Find.

Option Explicit
Sub test()
'   erstellt von Hajo.Ziplies@web.de 12.04.03
Dim Found As Range
Dim LoLetzte As Long
Dim sSearch As String
sSearch = InputBox("Suchbegriff:", , "test")
If sSearch = "" Then Exit Sub
LoLetzte = IIf(IsEmpty(Range("C65536")), Range("C65536").End(xlUp).Row, 65536)
Set Found = Range("C1:C" & LoLetzte).Find(sSearch, Range("C" & LoLetzte), , xlPart, ,  _
xlNext)
'   kompletter Vergleich und Inhalt
'    Set Found = .Range(.Cells(2, 10), .Cells(5753, 10)).Find(ActiveSheet.Cells(I, 54), _
'        .Cells(5753, 10), xlValues , xlWhole, , xlNext)
If Found Is Nothing Then Exit Sub  'falls nicht gefunden wird sub verlassen
MsgBox Found.Address
End Sub


Gruß Hajo

Anzeige
AW: ganze Zeile löschen mit VAriable
17.11.2008 13:48:00
angeldust
ok danke es findet die genaue Adresse... zb &c&2
wie kann ich nun die ganze zeile löschen sprich hier die zeile 2? also automatisch
wenn er die &C&2 als adresse findet sol er gleich die zeile löschen...?
AW: ganze Zeile löschen mit VAriable
17.11.2008 13:51:38
Hajo_Zi
Hallo Nick,
Ein Hallo zu Beginn und ein Gruß am Ende lässt den Beitrag doch gleich viel persönlicher aussehen. Auch wenn Du den Beitrag am Computer eingibst, sind es doch Menschen die den Beitrag lesen und keine Maschinen. Da sollte doch ein wenig Zeit für diese paar Worte da sein.
Falls ich mal einen Brief schreibe, dann steht zu Beginn Hallo … oder eine ähnliche Anrede und zum Schluss ein Gruß ... Ich vermute, bei Dir sieht es nicht viel anders aus. Nach meiner Auffassung ist ein Beitrag so etwas Ähnliches wie ein Brief und weshalb sollte ich mich da zwingen, eine andere Form zu benutzen?
Versuche es auch mal und Dir wird auffallen: wenn sich jeder Benutzer Zeit für höfliche Umgangsformen nimmt, führt das zu einer besseren Unterhaltung im Forum und keiner fühlt sich schlecht behandelt.
Eine Frage auf die Antwort und nicht seinen eiugenen Beitrag, macht sich besser, dann sieht man seine Antwort.
Rows(RaFound.Row).delete
Gruß Hajo
Anzeige
AW: ganze Zeile löschen mit VAriable
17.11.2008 14:10:36
angeldust
Hi Hajo,
sorry wegen der Gestalltung des Beitrags,
hmm könnte ich die Funktion test auch so ummodeln, dass sie einen string übergeben bekommt und die Zeilennummer also an int zurückgibt?

Public Sub test(eingabe as String)
'   erstellt von Hajo.Ziplies@web.de 12.04.03
Dim Found As Range
Dim LoLetzte As Long
Dim sSearch As String
sSearch = eingabe
If sSearch = "" Then Exit Sub
LoLetzte = IIf(IsEmpty(Range("C65536")), Range("C65536").End(xlUp).Row, 65536)
Set Found = Range("C1:C" & LoLetzte).Find(sSearch, Range("C" & LoLetzte), , xlPart, , _
xlNext)
'   kompletter Vergleich und Inhalt
'    Set Found = .Range(.Cells(2, 10), .Cells(5753, 10)).Find(ActiveSheet.Cells(I, 54), _
'        .Cells(5753, 10), xlValues , xlWhole, , xlNext)
If Found Is Nothing Then Exit Sub  'falls nicht gefunden wird sub verlassen
MsgBox Found.Address
End Sub


hmmm am Ende müsste etwas mit zurückgabe...
Danke
MfG
angeldust

Anzeige
AW: ganze Zeile löschen mit VAriable
17.11.2008 14:37:29
Hajo_Zi
Hallo Nick
Variable=Found.Row
Gruß Hajo
AW: ganze Zeile löschen mit VAriable
18.11.2008 11:33:00
angeldust
Hallo Leute
hier eine Funktion die ein String übergeben bekommt in dem eine gesuchte Eingabe ist ,
die Fkt findet oder auch nicht die ZEile in der die Eingabe sich befindet und gibt diese als
int zurück:

Public Function test(eingabe As String) As Integer
Dim Found As Range
Dim LoLetzte As Long
Dim sSearch As String
sSearch = eingabe
If sSearch = "" Then Exit Function
LoLetzte = IIf(IsEmpty(Range("C65536")), Range("C65536").End(xlUp).Row, 65536)
Set Found = Range("C1:C" & LoLetzte).Find(sSearch, Range("C" & LoLetzte), , xlPart, , _
xlNext)
'   kompletter Vergleich und Inhalt
'    Set Found = .Range(.Cells(2, 10), .Cells(5753, 10)).Find(ActiveSheet.Cells(I, 54), _
'        .Cells(5753, 10), xlValues , xlWhole, , xlNext)
If Found Is Nothing Then
MsgBox ("nicht gefunden")
Exit Function
Else
test = Found.Row
End If
End Function



Gruss an die Suchenden

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige