Anzeige
Archiv - Navigation
1460to1464
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

Text 600x kopieren mit variablen Textteilen

Text 600x kopieren mit variablen Textteilen
09.12.2015 09:41:56
Peter
Hallo zusammen
Ich möchte unten stehenden, 10 zeiligen Code ca. 600x kopieren.
Jede Codezeile kommt in eine Excelzelle (nicht den ganzen Code in eine Zelle).
Jeweils bei Codezeile 1 und 5 ist der letzte Textteil variabel.
Dieser variable Textteil ist in Spalte A, ab A1 gelistet.
Die anderen Codezeilen sind immer gleich.
Nun möchte ich dass der Code in Spalte B, ab B1, gemäss variablen Textteil in Spalte A kopiert wird. D.h. jeweils immer der ganze Code und die Zeile 1 und 5 werden variabel erstellt.
Zeile 1 setzt sich wie folgt zusammen (S u b natürlich ohne Leerzeichen):
="S u b AutofilterProdukt_"&A1&"()"
Zeile 5 setzt sich wie folgt zusammen:
=" Selection.AutoFilter Field:=col, Criteria1:"""&"*"&A1&"*"&""""
Dieser Code soll, gemäss Liste 600x kopiert werden:
Sub AutofilterProdukt_AAI()
Application.ScreenUpdating = False
Dim col%
col = Rows(3).Range("zProdukt").column
Selection.AutoFilter Field:=col, Criteria1:"*AAI*"
Call FilterzelleAktiv_Produkt
Call LetzteZeile_in_SpalteA_EingabeACN
Application.ScreenUpdating = True
If Cells(Rows.Count, 1).End(xlUp).row = 1 Then MsgBox "Filter leer!"
End Sub

In Spalte A, variable Textteile für jeweils Codezeile 1 und 5:
Entsprechend der Anzahl dieser Textteile wird der ganze 10zeilige, oben stehender Code kopiert (ca 600x).
AAI
AAI_36
AAI_WC
AL
AR
AR_AML
AR_CL
AR_HER1
AR_MED
AR_S
AT
AT_B
AT_CPH
AT_DE
AT_DE_FR
AT_DE_NL
bis 600 einmaliger Text
Ich hoffe, ich habe mich verständlich ausgedrück, zusätzlich habe ich noch eine Beispieldatei hochgeladen.
Wie müsste der Code aussehen?
Vielen Dank schon jetzt für jede Unterstützung.
Mit freundlichen Grüssen
Peter

23
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Text 600x kopieren mit variablen Textteilen
09.12.2015 09:58:16
Rudi
Hallo,
wozu soll das gut sein? Was hast du vor?
Geht garantiert einfacher als 600 quasi gleiche Makros zu erstellen.
Gruß
Rudi

AW: Text 600x kopieren mit variablen Textteilen
09.12.2015 10:16:44
UweD
Hallo
so?
- Kopiere den Ursprungs-Code in B1
Sub Kopieren600()
On Error GoTo Fehler
Dim i%, Z1$, Z5$
Dim LR1%, LR2%
Application.ScreenUpdating = False
With ActiveSheet
Z1 = Left(.Cells(1, 2), 22)
Z5 = Left(.Cells(5, 2), 53)
LR1 = .Cells(Rows.Count, 1).End(xlUp).Row 'letzte Zeile der Spalte A
For i = 2 To LR1
LR2 = .Cells(Rows.Count, 2).End(xlUp).Row + 1
.Cells(LR2, 2) = Z1 & .Cells(i, 1) & "()"
LR2 = LR2 + 1
.Range(Cells(2, 2), Cells(4, 2)).Copy Cells(LR2, 2)
LR2 = LR2 + 3
.Cells(LR2, 2) = Z5 & .Cells(i, 1) & "*"""
LR2 = LR2 + 1
.Range(Cells(6, 2), Cells(10, 2)).Copy Cells(LR2, 2)
Next
End With
'*** Fehlerbehandlung
Err.Clear
Fehler:
If Err.Number  0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub
Gruß UweD

Anzeige
AW: Text 600x kopieren mit variablen Textteilen
09.12.2015 10:23:16
Peter
Hallo Uwe
Wauh, so was von cool, funktioniert super, vielen Dank für Deine wertvolle Hilfe.
Du hast mir echt Zeit gespart!
Viele Grüsse,
Peter

600 Codes sind Mumpitz
09.12.2015 10:30:31
Rudi
zb. Aufruf per Doppelklick in A:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 1 Then
If Target  "" Then
AutofilterProdukt Target
Cancel = True
End If
End If
End Sub

Sub AutofilterProdukt(sProdukt As String)
Dim col%
Application.ScreenUpdating = False
col = Rows(3).Range("zProdukt").Column
Selection.AutoFilter Field:=col, Criteria1:="*" & sProdukt & "*"
Call FilterzelleAktiv_Produkt
Call LetzteZeile_in_SpalteA_EingabeACN
Application.ScreenUpdating = True
If Cells(Rows.Count, 1).End(xlUp).Row = 1 Then MsgBox "Filter leer!"
End Sub

Anzeige
AW: 600 Codes sind Mumpitz
09.12.2015 10:56:12
Peter
Hallo Rudi
Danke für Deinen Vorschlag.
Jedoch wird beim Kompilieren folgende Fehlermeldung angegeben:
Fehler beim Kompilieren
Argumenttyp ByRef unverträglich
Hab das ganze nicht in ein Modul, sondern in Microsoft Excel Objekte Tabelle1 gespeichert.
Hab ich was falsch gemacht
Viele Grüsse,
Peter

AW: 600 Codes sind Mumpitz
09.12.2015 11:17:37
Rudi
Hallo,
dann
Sub AutofilterProdukt(ByVal sProdukt As String)
Der erste Code ist in Tabelle1 richtig.
Den zweiten würde ich in ein Modul packen.
Gruß
Rudi

AW: 600 Codes sind Mumpitz
09.12.2015 12:46:14
Peter
Hallo Rudi
Super, sehr gut Dein Code, muss ich schon sagen! Danke für Deinen Input.
Die Doppelklickfunktion habe ich schon belegt (bei Doppelklick wird ein x in die Zelle, Spalte B oder J geschrieben), auch würde ich gerne testen, in mehreren Spalten Deinen Filtercode anzuwenden. Jedoch wie mache ich das mit der BeforeDoubleClick Funktion, wie kann ich diese mehrfach benutzen? Z.B. in Spalte H, Produktefilter und in Spalte K Aufmachungsfilter und ein x schreiben in Spalte B oder J je nach dem wo geklickt wurde etc.?
Danke für Deinen wertvollen Unterstützung.
Viele Grüsse,
Peter

Anzeige
AW: 600 Codes sind Mumpitz
09.12.2015 13:03:39
Rudi
Hallo,
wie kann ich diese mehrfach benutzen?
indem du z.B. die Spalte auswertest.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Select Case Target.Column
Case 1
If Target  "" Then
AutofilterProdukt Target
Cancel = True
End If
End If
Case 2, 10
'x in B oder J
Cancel = True
End Select
End Sub

AW: 600 Codes sind Mumpitz
09.12.2015 13:29:25
Peter
Hallo Rudi
Irgend was mach ich falsch....
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Select Case Target.column
Case 1
If Intersect(Target, Range("B:B")) Is Nothing Then Exit Sub    'If Intersect(Target, _
Range("J:J")) Is Nothing Then Exit Sub
If Len(Target.Cells(1)) = 0 Then
Target.Cells(1) = "x"
Else
Target.Cells(1) = vbNullString
End If
Cancel = True
Case 2, 10
If Intersect(Target, Range("J:J")) Is Nothing Then Exit Sub    'If Intersect(Target, _
Range("J:J")) Is Nothing Then Exit Sub
If Len(Target.Cells(1)) = 0 Then
Target.Cells(1) = "x"
Else
Target.Cells(1) = vbNullString
End If
Cancel = True
Case 3, 20
If Target.column = 7 Then
If Target  "" Then
Autofilter_Produkt Target
Cancel = True
End If
End If
Case 4, 30
If Target.column = 8 Then
If Target  "" Then
Autofilter_Aufmachung Target
Cancel = True
End If
End If
Case 5, 40
If Target.column = 9 Then
If Target  "" Then
Autofilter_NP_FS Target
Cancel = True
End If
End If
End Select
End Sub
Danke für Deine hilfreiche Unterstützung.
Viele Grüsse,
PEter

Anzeige
AW: 600 Codes sind Mumpitz
09.12.2015 13:54:58
Rudi
Irgend was mach ich falsch....
Irgendwas? Alles!
In
Select Case Target,Column
wird doch schon die Spalte ausgewertet.
Was sollen dann noch die Intersect bzw. If Target.Column= ..., die obendrein auch noch falsch sind.
z.B.
        Case 3, 20
If Target.column = 7 Then
Wie soll denn die Spalte =7 sein, wenn der Codeteil nur ausgeführt wird, wenn sie 3 oder 20 (C oder T)ist?
Gruß
Rudi

Codeteil 5 Zeiler kopieren und variabel anpassen
09.12.2015 14:33:18
Peter
Hallo Rudi
Hallo Uwe
Hab's verstanden und es funktioniert Bestens, super Funktion, vielen Dank Rudi für Deine wertvolle Hilfe!
Darf ich Uwe, oder auch Dich Rudi noch um Hilfe für die Anpassung des unten stehenden Codes bitten, ich verstehe diesen nicht und schaffe es einfach nicht, diesen entsprechend anzupassen?
Uwe's Code für Text mit 5, anstatt 10 Zeilen und Zeile 2 und 3, anstatt 1 und 5 sind anzupassen:
Sub Kopieren_ButtonAufmachung()
On Error GoTo Fehler
Dim i%, Z1$, Z5$
Dim LR1%, LR2%
Application.ScreenUpdating = False
With ActiveSheet
Z1 = Left(.Cells(1, 2), 22)
Z5 = Left(.Cells(5, 2), 54)
LR1 = .Cells(Rows.Count, 1).End(xlUp).Row 'letzte Zeile der Spalte A
For i = 2 To LR1
LR2 = .Cells(Rows.Count, 2).End(xlUp).Row + 1
.Cells(LR2, 2) = Z1 & .Cells(i, 1) & "()"
LR2 = LR2 + 1
.Range(Cells(2, 2), Cells(4, 2)).Copy Cells(LR2, 2)
LR2 = LR2 + 3
.Cells(LR2, 2) = Z5 & .Cells(i, 1) & "*"""
LR2 = LR2 + 1
.Range(Cells(6, 2), Cells(10, 2)).Copy Cells(LR2, 2)
Next
End With
'*** Fehlerbehandlung
Err.Clear
Fehler:
If Err.Number  0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub
Diese Prozedur kopiert und ersetzt die variablen Daten der Zeile 1 und 5 ab A1 bis letzte, beschriebene Zeile:
Sub AutofilterProdukt_AAI()
Application.ScreenUpdating = False
Dim col%
col = Rows(3).Range("zProdukt").column
Selection.AutoFilter Field:=col, Criteria1:"*AAI*"
Call FilterzelleAktiv_Produkt
Call LetzteZeile_in_SpalteA_EingabeACN
Application.ScreenUpdating = True
If Cells(Rows.Count, 1).End(xlUp).row = 1 Then MsgBox "Filter leer!"
End Sub

Nun soll der unten stehende Codeteil angepasst und kopiert werden: Anzupassen sind die Zeile 2 und 3 → AAI → variabel gemäss Liste ab A1
With .Controls.Add(Type:=msoControlButton)
.Caption = "AAI"
.OnAction = "Autofilter_AAI"
'.BeginGroup = True
End With
Die Liste ab A1:
AAI
AAI_36
AAI_WC
AL
AR
AR_AML
AR_CL
AR_HER1
AR_MED
AR_S
AT
AT_B
AT_CPH
AT_DE
AT_DE_FR
AT_DE_NL
bis 600 einmaliger Text
Vielen Dank schon jetzt für Eure geschätzte Hilfe.
Viele Grüsse
Peter

Anzeige
AW: Codeteil 5 Zeiler kopieren und variabel anpassen
09.12.2015 14:49:33
UweD
Copiere deine 5 Codezeilen in C1
Sub Kopieren600_SpalteC()
On Error GoTo Fehler
Dim i%, Z2$, Z3$
Dim LR1%, LR3%
Application.ScreenUpdating = False
With ActiveSheet
Z2 = Left(.Cells(2, 3), 12)
Z3 = Left(.Cells(3, 3), 24)
LR1 = .Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To LR1
LR3 = .Cells(Rows.Count, 3).End(xlUp).Row + 1
.Cells(1, 3).Copy .Cells(LR3, 3)
LR3 = LR3 + 1
.Cells(LR3, 3) = Z2 & .Cells(i, 1) & """"
LR3 = LR3 + 1
.Cells(LR3, 3) = Z3 & .Cells(i, 1) & """"
LR3 = LR3 + 1
.Range(Cells(4, 3), Cells(5, 3)).Copy Cells(LR3, 3)
Next
End With
Err.Clear
Fehler:
If Err.Number  0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub
Gruß UweD

Anzeige
AW: Text 600x kopieren mit variablen Textteilen
09.12.2015 11:01:27
Peter
Hallo Uwe
Hab doch noch ein Problem, dass ich nicht korrigiert bekomme:
In der 5. Codezeile fehlt das erste Sternchen "AAI_36*" müsste jedoch so sein: "*AAI_36*"
So sieht das Ergebnis aus, ohne erstes Sternchen:
Sub Autofilter_AAI()AAI_36()
Application.ScreenUpdating = False
Dim col%
col = Rows(3).Range("zAufmachung").column
Selection.AutoFilter Field:=col, Criteria1:="AAI_36*"
FilterzelleAktiv_Darreichungsform
Call LetzteZeile_in_SpalteA_EingabeACN
Application.ScreenUpdating = True
Call FilterMsgBox_FilterLeer
End Sub
Wie muss ich den Code anpassen, damit das fehlende Sternchen reinkommt?
Sub Kopieren600()
On Error GoTo Fehler
Dim i%, Z1$, Z5$
Dim LR1%, LR2%
Application.ScreenUpdating = False
With ActiveSheet
Z1 = Left(.Cells(1, 2), 22)
Z5 = Left(.Cells(5, 2), 53)
LR1 = .Cells(Rows.Count, 1).End(xlUp).Row 'letzte Zeile der Spalte A
For i = 2 To LR1
LR2 = .Cells(Rows.Count, 2).End(xlUp).Row + 1
.Cells(LR2, 2) = Z1 & .Cells(i, 1) & "()"
LR2 = LR2 + 1
.Range(Cells(2, 2), Cells(4, 2)).Copy Cells(LR2, 2)
LR2 = LR2 + 3
.Cells(LR2, 2) = Z5 & .Cells(i, 1) & "*"""
LR2 = LR2 + 1
.Range(Cells(6, 2), Cells(10, 2)).Copy Cells(LR2, 2)
Next
End With
'*** Fehlerbehandlung
Err.Clear
Fehler:
If Err.Number  0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err. _
Clear
End Sub
Danke Dir für Deine wertvolle Hilfe.
Viele Grüsse
Peter

Anzeige
AW: Text 600x kopieren mit variablen Textteilen
09.12.2015 11:15:56
UweD
Z5 = Left(.Cells(5, 2), 54)

AW: Text 600x kopieren mit variablen Textteilen
09.12.2015 12:02:41
Peter
Hallo Uwe
Funktioniert super, vielen Dank.
Jetzt habe ich noch eine Frage. Ich hab noch einen weiteren, letzten Text anzupassen.
Wie muss ich den Code ändern, damit der unten stehende Text angepasst wird?
Dieses mal nicht Zeile 1 und 5, sondern 2 und 3 und keine Sternchen, sonst gleiches Vorgehen:
With .Controls.Add(Type:=msoControlButton)
.Caption = "AAI"
.OnAction = "Autofilter_AAI"
'.BeginGroup = True
End With
Ich habe versucht, Deinen Code zu verstehen und entsprechend anzupassen, ist mir jedoch nicht gelungen. Kannst Du mir kurz, mit Bemerkungen im Code pro Codezeile, Deinen Code erklären, damit ich diesen anpassen kann, und/oder den angepassten Code durchgeben. Was für Dich am einfachsten ist.
Danke für Deine Hilfe.
Viele Grüsse,
Peter

Anzeige
AW: Text 600x kopieren mit variablen Textteilen
09.12.2015 12:34:08
Rudi
Hallo,
vermutlich
.Caption = Cells(i, 1)
.OnAction = "Autofilter_" & Cells(i, 1)
Bei 600 Buttons solltest du dich aber später nicht über die Performance beschweren.
Übersichtlich ist das auch nicht. Ich würde eine Listbox nehmen.
Gruß
Rudi

AW: Text 600x kopieren mit variablen Textteilen
09.12.2015 12:56:05
Peter
Hallo Rudi
Uwes Code war dieser, dieser müsste doch angepasst werden?
Sub Kopieren_AutofilterAufmachung()
On Error GoTo Fehler
Dim i%, Z1$, Z5$
Dim LR1%, LR2%
Application.ScreenUpdating = False
With ActiveSheet
Z1 = Left(.Cells(1, 2), 22)
Z5 = Left(.Cells(5, 2), 54)
LR1 = .Cells(Rows.Count, 1).End(xlUp).Row 'letzte Zeile der Spalte A
For i = 2 To LR1
LR2 = .Cells(Rows.Count, 2).End(xlUp).Row + 1
.Cells(LR2, 2) = Z1 & .Cells(i, 1) & "()"
LR2 = LR2 + 1
.Range(Cells(2, 2), Cells(4, 2)).Copy Cells(LR2, 2)
LR2 = LR2 + 3
.Cells(LR2, 2) = Z5 & .Cells(i, 1) & "*"""
LR2 = LR2 + 1
.Range(Cells(6, 2), Cells(10, 2)).Copy Cells(LR2, 2)
Next
End With
'*** Fehlerbehandlung
Err.Clear
Fehler:
If Err.Number  0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub
Gruss,
Peter

Anzeige
AW: Text 600x kopieren mit variablen Textteilen
09.12.2015 14:32:50
UweD
Ok. Hier mal die Zeilen erklärt.
Du musst dann z.B.

Z2 = Left(.Cells(2, 2), xx)
Z3 = Left(.Cells(3, 2), zz)

ermitteln
und später dann = mit & zusammenbauen
Sub Kopieren600()
On Error GoTo Fehler '00
Dim i%, Z1$, Z5$ '01
Dim LR1%, LR2% '02
Application.ScreenUpdating = False '03
With ActiveSheet '04
Z1 = Left(.Cells(1, 2), 22) '05
Z5 = Left(.Cells(5, 2), 54) '06
LR1 = .Cells(Rows.Count, 1).End(xlUp).Row '07
For i = 2 To LR1 '08
LR2 = .Cells(Rows.Count, 2).End(xlUp).Row + 1 '09
.Cells(LR2, 2) = Z1 & .Cells(i, 1) & "()" '10
LR2 = LR2 + 1 '11
.Range(Cells(2, 2), Cells(4, 2)).Copy Cells(LR2, 2) '12
LR2 = LR2 + 3 '13
.Cells(LR2, 2) = Z5 & .Cells(i, 1) & "*""" '14
LR2 = LR2 + 1 '15
.Range(Cells(6, 2), Cells(10, 2)).Copy Cells(LR2, 2) '16
Next '17
End With '18
'*** Fehlerbehandlung
Err.Clear
Fehler:
If Err.Number  0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err. _
Description: Err.Clear
End Sub
' 00 setzt die Fehlerbehandlung
' 01 und 02 reservieren/ festlegen der Variablen
' 03 Macht den Code schneller, da die Bildschirmaktuialisiereung erst zum Schluss erfolgt
' 04 Spart Schreibarbeit, alles innerhalb der With Anweisung
' 05 Variabler Teil der Zeile 1 Z1, nur die ersten 22 Zeichen
' 06 Variabler Teil der Zeile 5 Z5, nur die ersten 54 Zeichen (inkl. der Leerzeichen am Anfang)
' 07 letzte Zeile aus Spalte A
' 08 Schleife von 2 bis Ende Spalte A
' 09 Erste freie Zeile in Spalte B (im ersten Durchlauf =11)
' 10 setzt in Zelle B11 den Text zusammen: Z1, dahinter Inhalt aus A2, dahinter noch die ()
' 11 Neue erste Freie Zeile liegt jetzt eins tiefer, Also in B12
' 12 Kopiert Zelle B2 bis B4 in B11       >>> Cells(Zeile, Spalte)
' 13 Neue erste Freie Zeile liegt jetzt 3 tiefer, Also in B15
' 14 setzt in B15 den Text zusammen: Z5, dahinter Inhalt aus A2, dahinter noch * und "
'         " innnerhalb von Anführungszeichen müssen doppelt angegeben werden; deshalb hinten 3x
' 15 Neue erste Freie Zeile liegt jetzt eins tiefer, Also in B16
' 16 Kopiert Zelle B6 bis B10 in B16
' 17 Nächster Wert aus Spalte A
' 18 Ende der With Anweisung
' 19... Fehlerbehandlung

Gruß Uwe

sorry, aber es ist ....
09.12.2015 15:40:21
Rudi
... und bleibt Schwachsinn.
600 Buttons und 600 Codes wo 1 Listbox und 1 Code ausreicht.
Viel Spaß bei der Pflege.
Gruß
Rudi

@ Rudi
09.12.2015 15:42:43
UweD
... vielleicht schreibt er ja ein Buch und braucht noch Fülltext
:-)
LG Uwe

AW: @ Rudi
09.12.2015 16:18:53
Peter
Hallo Uwe
Das Erstellen funktioniert super, leider geht das Laden, Starten, resp. Erstellen den entsprechenden Buttons zu lange. Es war jedoch ein Versucht wert.
Danke Dir nochmals für Deine starke und hilfreiche Unterstützung.
Viele Grüsse,
Peter

AW: sorry, aber es ist ....
09.12.2015 16:15:17
Peter
Hallo Rudi
Ich bin es noch einmal, wie würde das mit der Listbox aussehen?
Wie schon gesagt, die Startzeit ist zu lange, wenn Du Lust und Zeit hast, ich bin ganz Ohr :-)
Viele Grüsse,
Peter

mit Combo-/Listbox
09.12.2015 16:50:23
Rudi
Hallo,
deine 600 Artikel auf Tabelle2, eine Combo-/ Listbox auf Tabelle1.
Combobox hat den Vorteil, dass man was eingeben kann und zum Listeneintrag gesprungen wird.
In DieseArbeitsmappe für Combobox:
Private Sub Workbook_Open()
With Sheets("Tabelle2")
Sheets("Tabelle1").ComboBox1.List = _
.Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
With Sheets("Tabelle1").ComboBox1
.MatchRequired = True
.MatchEntry = 1
End With
End Sub

Für Listbox:
Private Sub Workbook_Open()
With Sheets("Tabelle2")
Sheets("Tabelle1").ListBox1.List = _
.Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
End Sub

In Tabelle1:
Private Sub ComboBox1_Click()
AutofilterProdukt ComboBox1
End Sub

bzw.
Private Sub ListBox1_Click()
AutofilterProdukt ListBox1
End Sub

In ein Modul:
Sub AutofilterProdukt(ByVal sProdukt As String)
Dim col%
Application.ScreenUpdating = False
col = Rows(3).Range("zProdukt").Column
Selection.AutoFilter Field:=col, Criteria1:="*" & sProdukt & "*"
Call FilterzelleAktiv_Produkt
Call LetzteZeile_in_SpalteA_EingabeACN
Application.ScreenUpdating = True
If Cells(Rows.Count, 1).End(xlUp).Row = 1 Then MsgBox "Filter leer!"
End Sub
Gruß
Rudi

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige