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

Erste frei Zelle

Erste frei Zelle
27.05.2004 10:49:30
Andreas
hallo,
ich möchte nach ausgeführten Aktionen das erste leere Feld markieren, damit man direkt weiter schreiben kann.
Geht das so?
n = Sheets("UG").Cells(65536, 7).End(xlUp).Row + 1
Range(e, 1).Select
Weiß einer noch, ob man aus mehreren Tabellenblättern was abfragen kann und gegebenfalls löschen kann? Wie müsste das aussehen?
Select Case Workbook.Cells(i, 7).Value
Case Is = Sheet"Termine".Cells(i.7)= "UG"
Ist bestimmt falsch, oder? Hab nicht so viel Erfahrung! Würde mich freuen, wenn kemand mir bei den beiden Problemen helfen kann!
MFG Andreas

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Erste frei Zelle
27.05.2004 10:53:54
Matthias
Hallo Andreas,
zu 1. (erste frei Zelle in Spalte 7)
Cells(65536, 7).End(xlUp).Offset(1, 0).Select
zu 2.
Nachfrage: wo willst du denn suchen? In allen Blättern in einer best. Zelle?
Gruß Matthias
AW: Erste frei Zelle
27.05.2004 11:05:26
Andreas
Hey Matthias,
Danke für deine Info, ich möchte gerne in mehreren (aber nicht in allen) Tab.blättern eine Spalte nach "UG" abfragen, alle gefundenen Reihen sollen gelöscht werden und die restlichen so hochkopiert werden, dass Sie keine Lücken hinterlassen! Geht das überhaupt, oder ist das schwierig?
Danke im Voraus!
MFG Andreas
Anzeige
AW: Erste frei Zelle
27.05.2004 11:16:48
Matthias
Hallo Andreas,
so geht's:

Sub Test()
Const Suchspalte = 1
Dim lz As Long, z As Long
Dim sh As Worksheet
For Each sh In Sheets(Array("Tabelle1", "Tabelle2"))
With sh
lz = .Cells(65536, Suchspalte).End(xlUp).Row
For z = lz To 1 Step -1
If .Cells(z, Suchspalte) = "UG" Then
.Cells(z, 1).EntireRow.Delete
End If
Next z
End With
Next sh
End Sub

Gruß Matthias
AW: Erste frei Zelle
27.05.2004 11:18:13
Andreas
Hey Matthias,
Cells(65536, 7).End(xlUp).Offset(1, 0).Select
Aber als ich das an eine IF--Bedingungen gehängt habe, da geht der Cursor nicht mehr auf die erste freie Zelle, sondern irgendwo sonst an einer freien Stelle woran liegt das?
Bei der einen klappts aber, also bei einem Commandbutton und einem festen zugeordneten Tabellenblatt! DAnke also! ;-)
MFG Andreas
Anzeige
AW: Erste frei Zelle
27.05.2004 11:21:19
Matthias
Hallo Andreas,
wie hast Du es denn an die If-Bedingung gehängt (Code)?
Gruß Matthias
AW: Erste frei Zelle
27.05.2004 11:27:25
Andreas
Sorry, ich habs vergessen reinzukopieren:
For b = 4 To 103
If Sheets("UG").Cells(b, 9).Value = "offen" And Sheets("UG").Cells(b, 2).Value = "UG" Then
Do
m = m + 1
Loop Until IsEmpty(Sheets("Aktuelle Aufgaben").Cells(m, 7))
Rows(b).Copy Destination:=Sheets("Aktuelle Aufgaben").Cells(m, 1)
End If
Cells(65536, 1).End(xlUp).Offset(1, 0).Select
Next b
Ich hab das gerade mit deinem Programmcode ausprobiert, êinfach klasse, obwohl ich ihn nicht 100% verstehe, aber ich schau mir in mal in Ruhe an!! Vielen Dank!
Anzeige
AW: Erste frei Zelle
27.05.2004 11:35:05
Matthias
Hallo Andreas,
was bringt es, innerhalb der For-Next-Schleife die letzte Zeile zu markieren?
Schreib es mal umgekehrt:
Next b
Cells(65536, 1).End(xlUp).Offset(1, 0).Select
Gruß Matthias
AW: Erste frei Zelle
27.05.2004 11:41:48
Andreas
Ok, klar macht sinn, aber ich habe die If-Bedingung mehrmals, also hinter einander, 3mal!
Funktioniert es deswegen nicht? Muss ich, da ich in jeder If-Bedingung mich auf ein neues Tab.blatt beziehe, nicht Sheet("Dringende Termine").Cells..... schreiben, da er sonst nicht mit den verschiedenen Tab.blattern zurecht kommt?
AW: Erste frei Zelle
27.05.2004 11:44:50
Matthias
Hallo Andreas,
versuch's mal, so wie Du schreibst.
Der Select-Befehl macht aber nur auf dem aktiven Blatt Sinn, in nicht-aktiven sieht man es sowieso nicht und man kann Bezüge direkt angeben ohne Selection.[..]
Gruß Matthias
Anzeige
AW: Erste frei Zelle
27.05.2004 12:20:12
Andreas
Der zeigt einen anwendungs- und objektdefiniertern Fehler an, aber erst nach der 2ten If-Bedingung:
For a = 4 To 103
If Sheets("UG").Cells(a, 7).Value = Date And Sheets("UG").Cells(a, 2).Value = "UG" Or Sheets("UG").Cells(a, 7).Value = Date + 1 And Sheets("UG").Cells(a, 2).Value = "UG" Or Sheets("UG").Cells(a, 7).Value = Date + 2 And Sheets("UG").Cells(a, 2).Value = "UG" Or Sheets("UG").Cells(a, 7).Value = Date + 3 And Sheets("UG").Cells(a, 2).Value = "UG" Or Sheets("UG").Cells(a, 7).Value = Date + 4 And Sheets("UG").Cells(a, 2).Value = "UG" Or Sheets("UG").Cells(a, 7).Value = Date + 5 And Sheets("UG").Cells(a, 2).Value = "UG" Or Sheets("UG").Cells(a, 7).Value = Date + 6 And Sheets("UG").Cells(a, 2).Value = "UG" Then

Do
n = n + 1
Loop Until IsEmpty(Sheets("Dringende Termine").Cells(n, 7))
Rows(a).Copy Destination:=Sheets("Dringende Termine").Cells(n, 1)
End If
Next a
Sheets("Dringende Termine").Cells(65536, 1).End(xlUp).Offset(1, 0).Select
For b = 4 To 103
If Sheets("UG").Cells(b, 9).Value = "offen" And Sheets("UG").Cells(b, 2).Value = "UG" Then
Do
m = m + 1
Loop Until IsEmpty(Sheets("Aktuelle Aufgaben").Cells(m, 7))
Rows(b).Copy Destination:=Sheets("Aktuelle Aufgaben").Cells(m, 1)
End If
Next b
Sheets("Aktuelle Aufgaben").Cells(65536, 1).End(xlUp).Offset(1, 0).Select
Ohne .Select funktioniert es aber auch nicht, dann sagt er: Fehler beim Kompilieren (Syntaxfehler)! Ist irgendwie frustrierend ;-(
Anzeige
AW: Erste frei Zelle
27.05.2004 12:35:14
Andreas
Hey,
mir ist gerade aufgefallen, dass immer das entsprechende Blatt geöffnet sein muss, dann funktioniert es auch! Wie mache ich das am besten vor dem auf das Tab.blatt verweisen? Aber wie? ich dachte das mache ich durch Sheet("Termine").Cells....
Hast du ne Idee?
AW: Erste frei Zelle
27.05.2004 12:40:06
Matthias
Hallo Andreas,
ich habe im Moment den Gesamtüberblick ziemlich verloren.
Das Blatt wählst Du aus mit
Sheets("Termine").Select
Gruß Matthias
AW: Erste frei Zelle
27.05.2004 12:46:25
Andreas
Verständlich, hab ich auch: ;-)
Aber jetzt sagt er, schon in der ersten IF-Bedingung Anwendungs- und objektdefinierter Fehler! Es hat nichts gebracht vorher, das Blatt mit Sheet...Select anzuklicken, danach macht er den Fehler!! Wenn ich Haltepunkte setze und von Hand immer das richtige Blatt auswähle, dann funktioniert es ohne Probleme?!?!?! Weiß bald nicht mehr weiter, dass kann doch nicht unmöglich sein!
For a = 4 To 103
If Sheets("UG").Cells(a, 7).Value = Date And Sheets("UG").Cells(a, 2).Value = "UG" Or Sheets("UG").Cells(a, 7).Value = Date + 1 And Sheets("UG").Cells(a, 2).Value = "UG" Then

Do
n = n + 1
Loop Until IsEmpty(Sheets("Dringende Termine").Cells(n, 7))
Rows(a).Copy Destination:=Sheets("Dringende Termine").Cells(n, 1)
End If
Next a
Sheets("Dringende Termine").Select
Cells(65536, 1).End(xlUp).Offset(1, 0).Select !!!!!!!!!Hier liegt der Fehler !!!!!!!!!!!
For b = 4 To 103
If Sheets("UG").Cells(b, 9).Value = "offen" And Sheets("UG").Cells(b, 2).Value = "UG" Then
Do
m = m + 1
Loop Until IsEmpty(Sheets("Aktuelle Aufgaben").Cells(m, 7))
Rows(b).Copy Destination:=Sheets("Aktuelle Aufgaben").Cells(m, 1)
End If
Next b
Sheets("Aktuelle Aufgaben").Select
Cells(65536, 1).End(xlUp).Offset(1, 0).Select
For c = 4 To 103 usw wie oben
Anzeige
Geschafft, Spitzenleistung von dir! M.T.
27.05.2004 12:54:40
dir!
Next a
Sheets("Dringende Termine").Select
Sheets("Dringende Termine").Cells(65536, 1).End(xlUp).Offset(1, 0).Select
Mußte erst auf das Blatt verweisen und dann nochmal das Blatt markieren, damit er die erste freie Zelle finden konnte!
Super vielen Dank
Danke für die Rückmeldung, geschlossen - o.T.
27.05.2004 12:57:00
Matthias
-

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige