Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1396to1400
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
Zeilen mit x ausblenden
15.12.2014 15:46:16
Manu
Hallo Zusammen,
mit dem folgenden Code ist es mir möglich bestimmte Zeilen aus dem Tabellenblatt2 auszublenden, wenn in der selben Zeile im Tabellenblatt1 in Spalte a ein "x" vermerkt ist. Das Tabellenblatt2 ist eine Verknüpfung von Tabellenblatt1:
Sub ausblenden()
Dim zeile As Long
For zeile = 1 To ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
If Cells(zeile, 1) = "x" Then
Rows(zeile).EntireRow.Hidden = True
Else
Rows(zeile).EntireRow.Hidden = False
End If
Next zeile
End Sub

Das ganze funktioniert prima, meine frage ist nun:
Ich möchte, dass das ganze auch Mappenübergreifend funktioniert. Wie muss ich den Code abändern? Wenn in Mappe1, Tabelle1 in einer bestimmten Zeile ein "x" vermerkt ist, soll in Mappe2, Tabelle1 die selbe Zeile ausgeblendet werden. Am Besten wäre es wenn Mappe1 nicht geöffnet sein müsste um Mappe2 zu aktualisieren. Auch hier ist Mappe2 die Verknüpfung von Mappe 1.
Vielen vielen Dank im Voraus!!

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen mit x ausblenden
15.12.2014 15:53:56
Daniel
Hi
du musst dann einfach nur für jede Mappe, bzw Tabellenblatt eine weitere Zeile einfügen, in der du dann die jeweilige Zeile ausblendest:
 Rows(zeile).EntireRow.Hidden = True
Workbooks("Mappe2.xlsx").Sheets("Tabelle1").Rows(Zeile).EntireRow.Hidden = True
funktioniert aber nur, wenn Mappe2 geöffnet ist.
Auf geschlossene Dateien kann man nur lesend zugreifen (und das auch nur eingeschränkt).
An geschlossenen Dateien kannst du keine Veränderungen vornehmen.
Dat is wie mit deinem Reisekoffer. Du kannst zwar in den geschlossenen Koffer hineinschauen (bsw mit einem Röntgengerät), aber wenn du in den Koffer was hineintun oder herausnehmen willst, dann musst du ihn öffnen.
Gruß Daniel

Anzeige
AW: Zeilen mit x ausblenden
15.12.2014 16:23:54
Manu
Hallo Daniel,
danke für die Antwort.
Ich möchte Mappe1 (also die Quelle) nicht mit Makros versehen. Wäre das ganze auch möglich indem ich ein Makro in Mappe2 (also die Verknüpfung) eingebe?

AW: Zeilen mit x ausblenden
15.12.2014 16:33:13
Daniel
HI
klar in Mappe2 kannst du natürlich das gleiche Makro einfügen und eben dann dort ein/oder ausblenden, wenn du die Datei öffnest.
Warum benutzt du nicht einfach den Autofilter?
Gruß Daniel

AW: Zeilen mit x ausblenden
15.12.2014 17:16:43
Manu
Hi,
das klappt schon mal teilweise. Ein Autofilter kommt nicht in Frage, da ich nicht als einziger auf diese Tabellen zugreife und alles automatisch geschehen soll.
Wenn ich in Mappe1, Tabelle1 z.B. in Zeile 5 und 14 ein "x" eingebe dan blendet er mir in Mappe2, Zeile1 die Zeile 5 aus aber bei Zeile 14 bekomme ich folgende Fehlermeldung:
Laufzeitfehler 9
Index außerhalb des gültigen Bereichs
Was muss ich noch ändern?
Danke im Voraus

Anzeige
AW: Zeilen mit x ausblenden
15.12.2014 17:57:20
Daniel
Hi
woher soll ich das wissen?
ich kenne weder deinen Code noch deine Daten.
Gruß Daniel

AW: Zeilen mit x ausblenden
16.12.2014 08:05:10
Manu
Guten Morgen,
erst mal Danke für deine Bemühungen.
anbei die Excel Liste und der Code. Das wird mir angezeigt: Laufzeitfehler "9" Index außerhalb des gültigen Bereichs
https://www.herber.de/bbs/user/94427.xlsm
Sub ausblenden()
Dim zeile As Long
For zeile = 1 To ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
If Cells(zeile, 1) = "x" Then
Rows(zeile).EntireRow.Hidden = True
Workbooks("Mappe1.xlsx").Sheets("Tabelle1").Rows(zeile).EntireRow.Hidden = True
Else
Rows(zeile).EntireRow.Hidden = False
End If
Next zeile
End Sub
Vielen Dank im Voraus

Anzeige
AW: Zeilen mit x ausblenden
16.12.2014 10:34:51
Daniel
Hi
der Laufzeitfehler 9 (Index ausserhalb des gültigen Bereichs) kommt beispielsweise dann, wenn du bei:
Worksbooks("Workbookname.xlsx") oder Sheets("Tabellenblattname") einen Namen verwendest, der nicht vorhanden ist.
Hierbei musst du auf die genaue Schreibweise der Namen achten.
Bei Workbooks ist es der Dateiname ohne Pfad, bei Sheets der Tabellenname, der auf dem Reiter steht
Gruß Daniel

AW: Zeilen mit x ausblenden
16.12.2014 14:45:43
Manu
Hi Daniel,
ich habs! Dabei hast du es mir gestern noch geschrieben - Die Quellmappe muss ebenfalls geöffnet sein!!! Über Workbook_Open() habe ich jetzt auch den automatischen Start des Makros hinbekommen. Gibt es denn wirklich nicht die Möglichkeit mittels VBA von der geschlossenen Mappe 1 die Informationen abzurufen? Das wäre dann dieeee Lösung!!
Danke im Voraus

Anzeige
AW: Zeilen mit x ausblenden
16.12.2014 16:47:05
Manu
Hi Daniel,
ich habs anscheinend gelöst! Ich habe folgende Zeile entfernt: Workbooks("Mappe1.xlsx").Sheets("Tabelle1").Rows(zeile).EntireRow.Hidden = True
Die Verknüpfung funktioniert auch bei geschlossener Mappe1. Die Problematik war nur bei der geschlossenen Mappe1 auszulesen ob ein "x" vorhanden ist. Jetzt liest das Makro die Information aus Mappe 2 aus und es funktioniert wunderbar..
Vielen vielen Dank für deine Hilfe
Gruß

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige