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

Makro: Nichtleere Zelle suchen und markieren

Makro: Nichtleere Zelle suchen und markieren
Daniel
Guten Tag
Ich möchte ein Makro ausführen können, dass folgendes macht:
In der Arbeitsmappe "Schüler B Startkarten" die Zelle B5 kontrollieren ob etwas drinsteht. Wenn etwas drinsteht, soll das Makro die 4 Zellen obendran,
die 1 Zelle links, die 3 Zellen rechts und die 13 Zellen untendran markieren. Und zwar nicht die einzelnen Zellen, sondern gleich das ganze Rechteck dieser Zellen.
Danach soll das Makro das ganze bei B24 wiederholen. Und bei B43 usw. also immer in 19er-Schritten.
Kann mir da jemand weiterhelfen?
Vielen Dank schon im voraus.
AW: Makro: Nichtleere Zelle suchen und markieren
18.02.2010 11:48:41
Oberschlumpf
Moin Daniel
Eine Bsp-Datei (genau so, wie sie auch bei dir aussieht) mit Bsp-Daten könnte sehr hilfreich sein.
Ciao
Thorsten
Markieren ? und dann was machen ?
18.02.2010 14:32:34
Renee
Hi Daniel,
...1 Zelle links, die 3 Zellen rechts und die 13 Zellen untendran markieren...
D.h. dann für B5 den Bereich A1:E18, für B24 den Bereich A20:E37 etc. markieren ?
Was bedeutet für Dich markieren ? Auswählen oder einfärben, also soll was mit diesem Bereich passieren ?
GreetZ Renée
AW: Makro: Nichtleere Zelle suchen und markieren
18.02.2010 11:49:03
Björn
Hallo,
Kann mir da jemand weiterhelfen?

Ja, ich kann Dir weiterhelfen, aber dazu muss ich wissen, was Du bisher schon hast.
Wie sieht denn dein Makro aus?
Wo hast Du Probleme?
Gruß
Björn B.
Anzeige
AW: Makro: Nichtleere Zelle suchen und markieren
22.02.2010 11:48:28
Daniel
Hallo
die Datei kann ich leider nicht hochladen, weil sie 1.1Mb gross ist.
Der Bereich soll markiert werden, so dass ich über "Markierung drucken" nur diese Zellen ausgedruckt bekomme.
Mir fehlt leider schon die Grundidee,wie ich die einzelnen Zellen abfragen kann, deshalb habe ich noch nichts geschrieben.
Ich steh momentan total auf der Leitung.
AW: Makro: Nichtleere Zelle suchen und markieren
22.02.2010 12:48:52
Renee
ah... den Bereich drucken!
Warum sagst du das nicht gleich ?, Daniel
Code in ein Modul:
Sub StartKartenDrucken()
Const cLngStep As Long = 19
Dim lngCnt As Long
With Worksheets("Schüler B Startkarten")
For lngCnt = 5 To .Cells(.Rows.Count, 2).End(xlUp).Row Step cLngStep
If .Cells(lngCnt, 2)  "" Then
.Range(.Cells(lngCnt - 4, 1), .Cells(lngCnt + 13, 5)).PrintOut
End If
Next lngCnt
End With
End Sub

GreetZ Renée
Anzeige
AW: Makro: Nichtleere Zelle suchen und markieren
22.02.2010 13:49:12
Daniel
Ja genau so! Super! Vielen vielen Dank.
Nur nach dem die richtigen Bereiche gedruckt wurden, werden endlos Bereiche gedruckt, die nichts in den Zellen enthalten.
Ich glaube ich weiss auch warum. In diesen Zellen sind Formeln drin. Geht das dann überhaupt, dass es die als leer erkennt?
Gruss
Daniel
Formeln ? Was für Formeln bitte! owT
22.02.2010 13:57:46
Renee

AW: Formeln ? Was für Formeln bitte! owT
22.02.2010 14:38:53
Daniel
Sorry!
=INDIREKT("'Schüler B Liste'!B2")
Die Schüler werden in separate Listen geleitet und von dort dann in den Bereich, den ich drucken möchte.
Warum mit INDIREKT?
22.02.2010 14:47:10
Björn
Hallo,
diese Formel ist völlig umständlich. Warum schreibst du die Verknüpfung nicht gleicht so:
=Schüler B Liste!B2
Zuwas hast Du hier das INDIREKT?
_________________________
Was ist denn in den Zellen mit Verknüpfung enthalten? Also was steht in "Schüler B Liste!B2"?
Wirklich nichts? Dann müsste die Prüfung von Renee auf "" funktionieren!
Kann es sein, dass dort z.B. ein Leerzeichen steht oder sonst was?
Gruß
Björn B.
Gruß
Björn B.
Anzeige
AW: Warum mit INDIREKT?
22.02.2010 15:46:02
Daniel
INDIREKT darum, weil von oben ständig neue Zeilen mit einem anderen Makro eingefügt werden.
Und da sonst der Fehler #Bezug erscheint.
Also da steht nur die Formel drin. Sonst nichts. Könnte das Endlos-Drucken denn eine andere Ursache haben?
AW: Warum mit INDIREKT?
22.02.2010 16:02:52
Renee
Hi Daniel,
Probier mal statt:
 If .Cells(lngCnt, 2)  "" Then

das hier
If Not(.Cells(lngCnt, 2) = "" Or .Cells(lngCnt,2) = 0)  Then
GreetZ Renée
AW: Warum mit INDIREKT?
22.02.2010 17:58:33
Daniel
Das geht leider auch nicht.
Da muss ich das Excel per Task- Manager schliessen, weil es nur noch drucken will.
In der Schüler Liste B2 stehen die Formeln mit denen die Daten selektiert werden.
=WENN(UND(Liste!$D:$D1998;Liste!$E:$E="M");Liste!A:A;" ")
Anzeige
Wie kann man auch...
22.02.2010 18:43:36
Renee
statt "" ein (unnötiges) Leerzeichen in die Zelle schreiben, Daniel ?
Also entweder brauchst du meinen Originalcode und änderst die Formel(n), wie es üblich ist, auf:
=WENN(UND(Liste!$D:$D1998;Liste!$E:$E="M");Liste!A:A;"")

oder du änderst die Zeile in meinem Orignalcode auf:
 If .Cells(lngCnt, 2)  " " Then
GreetZ Renée
Aha, wusste ich es doch...
23.02.2010 07:22:07
Björn
Hallo,
nur so nebenbei, ich habe gestern schon um 14:47h gefragt, was in der Zelle steht, weil ich schon vermutet habe, dass damit was nicht stimmt.
Wie Renee schon geschrieben hat, das Leerzeichen kannst Du Dir sparen. Das Leerzeichen ist wie der Name schon sagt ein leeres Zeichen und damit ist es definitiv ein Zeichen!
Bei der Abfrage, ob in der Zelle was drin steht, muss logischerweise als Antwort JA bzw. WAHR kommen!
Nur weil Du es nicht siehst, heißt es ja nicht, dass es nicht da ist... sonst würde ja auch weiße Schrift auf weißem Hintergrund "leer" bedeuten (war jetzt bewusst übertrieben...). ;-)
Gruß
Björn B.
Anzeige
Das war nicht meine Frage...
22.02.2010 16:05:45
Björn
Hallo,
ich will wissen:
Also was steht in "Schüler B Liste!B2"?

Das war die Frage.
Gruß
Björn B.

322 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige