Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1748to1752
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

Dynamischen markieren N Selektionen VBA

Dynamischen markieren N Selektionen VBA
07.04.2020 11:52:43
PunkteJoe
Hallo Herber Community,
ich bitte um Hilfe bei folgendem Problem:
In meinem Arbeitsblatt habe ich mehrere Blöcke von Informationen untereinander. Jetzt suche ich nach einer Lösung, in der das Makro Spalte "H" nach dem Wort "OK" durchsucht, und alle Blöcke die "OK" sind markiert und dann als "Auswahl Drucken" druckt.
Der erste Block startet in A1:G31. Darunter sind weitere 60 Blöcke dieser Art.
Ich habe folgenden Code selber versucht, aber in dieser Version markiert er mir nur den ersten _
Block den er mit "OK" findet und nicht alle weiteren.

Sub MarkierenDrucken()
Dim last As Long
Dim i As Long
With ActiveSheet
last = .Cells(.Rows.Count, 8).End(xlUp).Row
For i = last To 1 Step -1
If .Cells(i, 8).Value = "NN" Then
.Cells(i, 1).Resize(31, 8).Select
End If
Next i
End With
End Sub

Eindeutig mache ich etwas falsch, eure Unterstützung weiß ich zu schätzen.
Viele Grüße
PunkteJoe

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dynamischen markieren N Selektionen VBA
07.04.2020 12:16:30
Daniel
Hi
Es wäre gut, wenn die Informationen, die du uns gibst, zusammen passen.
In der Beschreibung suchst du nach "OK", im Code steht aber "NN".
WARUM?
Absicht? Was willst du damit bezwecken?
Fehler? Kennst du deinen Code nicht?
Was soll ich jetzt verwenden, wenn ich dir ein Codebeispiel schreibe? Welche Variante gilt, die Beschreibung oder der Code?
Gibst noch mehr so "Böcke"?
Jetzt zu deiner Frage:
Wenn du mehrere Blöcke hast, musst du die zuerst mit UNION in einer Rangevariablen sammeln und dann nach der Schleife als ganzes selektieren.
Sub MarkierenDrucken()
Dim last As Long
Dim i As Long
Dim Druck as Range
With ActiveSheet
last = .Cells(.Rows.Count, 8).End(xlUp).Row
For i = last To 1 Step -1
If .Cells(i, 8).Value = "NN" Then
If Druck is Nothing then
Set Druck = .Cells(i, 1).Resize(31, 8)
Else
Set Druck = Union(Druck, .Cells(i, 1).Resize(31, 8))
End if
End If
Next i
End With
Druck.Select
End Sub
Gruß Daniel
Anzeige
AW: Dynamischen markieren N Selektionen VBA
07.04.2020 12:37:45
PunkteJoe
Hallo Daniel,
du hast vollkommen Recht, die Informationen die ich angegeben habe, passen nicht zusammen. Das war ein Fehler von mir. Ich hätte im code anstatt "NN" nach "OK" suchen müssen wenn ich es in der Beschreibung so nenne.
Vielen Dank, dass du dich trotzdem der Frage angenommen hast. Deine Lösung funktioniert genau so wie ich mir es vorgestellt habe. Vielen Dank für deine Unterstützung.
Viele Grüße PunkteJoe

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige