Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bedingung für Makro

Bedingung für Makro
Andreas
Hallo Forum,
mit eurer Hilfe habe ich folgenden Code erstellt und in ein Modul eingefügt. Dieser Code bewirkt das wenn in Spalte 11 "erledigt"steht diese Zeile auf ein anderes Arbeitsplatt kopiert wird. Wie kann man den Code ändern damit anstatt des Wortes "erledigt" mehrere Begriffe diese Bedingung erfüllen. Die Begriffe stehen auf dem Tabellenbaltt in Spalte O4 bis O10. Die Spalte 11 hat als Gültigkeit genau diese Zellen O4:O10.
Sub Erledigte()
For i = 1 To Tabelle1.[G65536].End(xlUp).Row
If Cells(i, 11) = "erledigt" Then
x = Tabelle2.[G65536].End(xlUp).Row + 1
Range(Cells(i, 1), Cells(i, 12)).Copy Tabelle2.Cells(x, 1)
Range(Cells(i, 1), Cells(i, 12)) = ""
Range("A4:M115").Select
Selection.Sort Key1:=Range("A4"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
ActiveWindow.SmallScroll Down:=-126
Range("A4").Select
End If
Next i
End Sub

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Bedingung für Makro
26.11.2009 16:30:30
ptonka
Hallo Andreas,
Versuche folgendes: Die u.a. Prozedur kopierst Du vor Deine Prozedur "Erledigte"
Die "Public"-Anweisung gehört dazu !!!!!!!
Public Bedingung as string

Sub Bedingungen
for i = 4 to 10
Bedingung = cells(i, 15).value
call Erledigte
next i
End Sub
Und in Deiner Prozedur "Erledigte" ersetzt Du
If Cells(i, 11) = "erledigt" Then
durch
If Cells(i, 11) = Bedingung Then
Gruß,
Ptonka
Anzeige
AW: Bedingung für Makro
26.11.2009 16:39:49
Andreas
Geht leider nicht. Es wird alles mögliche kopiert auch Zeilen in den spalte 11 leer ist.
Ist es einfacher zu sagen: wenn Spalte 11 nichtleer dann kopiere?
Der Cod sieht jetzt so aus:
Public Bedingung As String
Sub Bedingungen()
For i = 4 To 10
Bedingung = Cells(i, 15).Value
Call Erledigte
Next i
End Sub

Sub Erledigte()
For i = 1 To Tabelle1.[G65536].End(xlUp).Row
If Cells(i, 11) = Bedingung Then
x = Tabelle2.[G65536].End(xlUp).Row + 1
Range(Cells(i, 1), Cells(i, 12)).Copy Tabelle2.Cells(x, 1)
Range(Cells(i, 1), Cells(i, 12)) = ""
Range("A4:M115").Select
Selection.Sort Key1:=Range("A4"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
ActiveWindow.SmallScroll Down:=-126
Range("A4").Select
End If
Next i
End Sub

Anzeige
AW: Bedingung für Makro
26.11.2009 16:33:31
Rudi
Hallo,
If Not IsError(Application.Match(Cells(i, 11), Range("O4:O11"), 0)) Then
Gruß
Rudi
AW: Bedingung für Makro
26.11.2009 16:46:51
Andreas
wo muss ich diese einfügen?
Hat funztn, super, Danke, owT
26.11.2009 17:09:02
Andreas
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige