Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1324to1328
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 funzt net

makro funzt net
14.08.2013 10:28:59
David
guten morgen,
hier ein makro den ich grad gebaut habe. aber irgendwie will er nicht...
Sub ZeilenIndexaus()
Dim yRange As Range
Set yRange = Worksheets("Angaben").Range("C22")
If yRange.Value = "Ansatz 1" Or "Ansatz 2" Then
For Rows = 14 To 23
Rows.EntireRow.Hidden = True
Else
Rows.EntireRow.Hidden = False
End If
End Sub

kann mir jemand sagen was daran falsch sein soll?
danke
gruß,
david

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

Betreff
Datum
Anwender
Anzeige
AW: makro funzt net
14.08.2013 10:53:52
Luschi
Hallo David,
ich glaube, du stocherst ganz schön im Nebel. In Deinem Hilferuf von heute 10:07:18, sah der _ funktionierende Code noch so aus:

Sub Zeilenausblenden1()
Dim iZeile As Long
For iZeile = 9 To 49
If Cells(iZeile, "AJ") = 0 Then
Rows(iZeile).EntireRow.Hidden = True
Else
Rows(iZeile).EntireRow.Hidden = False
End If
Next iZeile
End Sub
Siehst Du den Unterschied?
Angepaßt an die neue Lage sollte er so funktionieren:

Sub ZeilenIndexAus()
Dim ws As Worksheet, yRange As Range
Dim i As Integer, ok As Boolean
Set ws = ThisWorkbook.Worksheets("Angaben")
Set yRange = ws.Range("C22")
If yRange.Value = "Ansatz 1" Or yRange.Value = "Ansatz 2" Then
ok = False
Else
ok = True
End If
ws.Rows("14:23").EntireRow.Hidden = ok
Set ws = Nothing
Set yRange = Nothing
End Sub
Gruß von Luschi
aus klein-Paris
PS: Ich wundere mich stark, warum Du jetzt wieder mit den 26 Makros ankommst. Auf mein letzten Post dazu hast Du nicht geantwortet - dabei waren wir ja schon auf einem guten Weg. Jetzt verkneif ich mir das für HEUTE()!

Anzeige
AW: makro funzt net
14.08.2013 11:01:58
David
danke für die schnelle antwort.
ich hätte vielleicht dazu schreiben sollen das es sich hier um einen anderen makro handelt. hier bin ich auf einem anderen tabellenblatt und muss andere zeilen ausblenden. das hat nichts mit den 26 makros zutun.
ich habe heute noch einen anderen post für die 26 geschrieben in dem ich frage wie ich die dinger zusammen baue und einen "turbo" dran setze. Der post heist: "makros verbinden und turbos einbauen"
du hast recht. auf deinen letzten post habe ich nicht geantwortet, wollte es aber sowieso machen um zu fragen was du genau meinst mit "Parametern" steuern.
Sorry für die Verwirrung
Gruß,
david

Anzeige
AW: makro funzt net
14.08.2013 13:41:48
Luschi
Hallo David,
damit Du erkennst, was ich mit Parameterübergabe meine, hier noch mal meinen
letzen Vba-Code aufgeteilt in 2 Prozeduren.
Wenn man in MachsMal, die Ausgangswerte ändert, kann man mit ZeilenIndexAus
sehr variabel agieren:

Sub ZeilenIndexAus(xWs As String, xRg1 As String, xRg2 As String, xWert1 As String, xWert2 As  _
String)
Dim ws As Worksheet, yRange As Range
Dim i As Integer, ok As Boolean
Set ws = ThisWorkbook.Worksheets(xWs)
Set yRange = ws.Range(xRg1)
If yRange.Value = xWert1 Or yRange.Value = xWert2 Then
ok = False
Else
ok = True
End If
ws.Rows(xRg2).EntireRow.Hidden = ok
Set ws = Nothing
Set yRange = Nothing
End Sub
Sub MachsMal()
Dim s1 As String, s2 As String, s3 As String, s4 As String, s5 As String
s1 = "Angaben"
s2 = "C22"
s3 = "14:23"
s4 = "Ansatz 1"
s5 = "Ansatz 2"
Call ZeilenIndexAus(s1, s2, s3, s4, s5)
End Sub
Gruß von Luschi
aus klein-Paris

Anzeige
AW: makro funzt net
19.08.2013 17:06:20
david
danke für den tip. ich hatte in den letzten tagen viel zutun und hatte keine zeit das ganze zu probieren. ich setze mich gleich morgen dran und gebe dir rückmeldung ob es geklappt hat.
einen schönen abend noch.
david

AW: makro funzt net
20.08.2013 10:31:18
David
Ich wollte grad die schleifen bauen, da ist mir aufgefallen, dass es noch ein anderes problem gibt was ich davor übersehen habe.
folgender makro blendet die zeilen aus:
Sub Zeilenausblenden1()
Dim iZeile As Long
For iZeile = 9 To 49
If Cells(iZeile, "AJ") = 0 Then
Rows(iZeile).EntireRow.Hidden = True
Else
Rows(iZeile).EntireRow.Hidden = False
End If
Next iZeile
End Sub
in der tabelle in der die zeilen ausgeblendet werden gibt es am linken rand die zeilen 9 bis 49 per hand ein oder auszublenden. dafür gibt es am rand einen +/- Button mit dem ich die zeilen ein und ausblenden kann.
ist der makro nun aktiviert und die zeilen 9 bis 49 sind alle eingeblendet, dann funktioniert der makro einwandfrei. wenn ich nun aber auf den +/- button drücke um alle zeilen auszublenden, dann noch einmal auf den +/- button klicke, ist der makro nicht mehr aktiv.
wie kann ich nun den makro so modifizieren, dass wenn ich per hand die gesammten zeilen von 9 bis 29 per hand ein und ausblende trotzdem aktiv bleibt?
vielen dank.
gruß,
david
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige