Microsoft Excel ist eines der beliebtesten Werkzeuge für die Arbeit mit Datentabellen. Es bietet viele Funktionen und Funktionen, die die Arbeit mit großen Mengen an Informationen erheblich vereinfachen und beschleunigen. Eine dieser Funktionen ist die Suche nach Daten in allen Arbeitsblättern in einer Arbeitsmappe.
Wenn Sie mit vielen Arbeitsblättern und unterschiedlichen Datenstrukturen arbeiten, müssen Sie möglicherweise einen bestimmten Wert finden, aber das manuelle Durchlaufen jedes Arbeitsblatts ist ein langer und ineffizienter Prozess. In diesem Fall kann die Verwendung eines Makros in VBA (Visual Basic for Applications) die Suche erheblich vereinfachen.
Ein Makro in Excel ist eine Reihe von Befehlen und Anweisungen, die in der Programmiersprache VBA geschrieben wurden. Es ermöglicht Ihnen, sich wiederholende Aufgaben zu automatisieren und Datenverarbeitungsvorgänge schnell durchzuführen. Sie können ein Makro schreiben, um nach einem Wert in allen Arbeitsblättern in einer Arbeitsmappe zu suchen, der jedes Arbeitsblatt abwechselnd durchläuft und nach dem gewünschten Wert sucht.
In diesem Artikel betrachten wir eine effektive Methode zum Erstellen eines Makros für die Suche in allen Arbeitsblättern in Excel mithilfe der Programmiersprache VBA. Wir zeigen Ihnen, wie Sie einen Suchbereich angeben, Suchkriterien festlegen und schließlich die Suchergebnisse in einem neuen Arbeitsblatt abrufen können. Dieser Ansatz ist nützlich für die Arbeit mit großen Datenmengen und spart Ihnen Zeit und Aufwand bei der Suche nach Informationen, die Sie in Excel benötigen.
Excel: Durchsuchen Sie alle Arbeitsblätter mit VBA
Das Auffinden von Informationen in großen Excel-Tabellen kann eine sehr zeitaufwendige Aufgabe sein. Mit VBA können Sie diesen Prozess jedoch erheblich vereinfachen, indem Sie gleichzeitig in allen Arbeitsblättern der Arbeitsmappe nach den benötigten Daten suchen können.
Zuerst müssen Sie den VBA-Editor in Excel öffnen, indem Sie ALT + F11 drücken. Dann fügen Sie den folgenden Code ein:
Sub Поиск_по_всем_листам()Dim sh As WorksheetDim rng As RangeDim searchValue As String' Здесь указываем значение, которое необходимо найтиsearchValue = "Искомое значение"' Перебираем все листы книгиFor Each sh In ThisWorkbook.Sheets' Ищем значение в каждом листеSet rng = sh.Cells.Find(What:=searchValue, LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=False)' Если значение найдено, то выводим егоIf Not rng Is Nothing ThenMsgBox "Значение найдено на листе " & sh.Name & " в ячейке " & rng.AddressEnd IfNext shEnd Sub
Dieser Code funktioniert wie folgt:
- Sie müssen den Wert, den Sie in der Tabelle finden möchten, in die Variable searchValue einfügen. Zum Beispiel "Suchwert".
- Die For Each-Schleife durchläuft alle Arbeitsblätter der Arbeitsmappe, beginnend mit der ersten.
- In der Zeile Set rng = sh.Cells.Find(What:=searchValue, LookIn:=xlValues, LookAt:=xlWhole, matchCase:=False) Der searchValue-Wert wird in den sh-Zellen (jedem Arbeitsblatt) gesucht. Die Optionen LookIn:=xlValues und LookAt:=xlWhole bedeuten, dass die Suche nur in Werten durchgeführt wird und genau mit dem Wert übereinstimmt.
- Wenn ein Wert gefunden wird, wird eine Meldung mit dem Namen des Arbeitsblatts und der Adresse der Zelle angezeigt, in der der Wert gefunden wurde.
Nachdem dieser Code angewendet wurde, durchläuft Excel alle Arbeitsblätter der Arbeitsmappe und zeigt eine Meldung an, wenn der gewünschte Wert gefunden wird. Auf diese Weise wird die Suche nach Werten in Excel wesentlich effizienter und schneller.
Beachten Sie, dass dieser Code nur in Textzellen nach einem Wert sucht. Wenn Sie andere Zelltypen (z. B. numerische oder Datumsangaben) durchsuchen möchten, müssen Sie die Option LookIn entsprechend ändern.
Auf diese Weise können Sie mit VBA die Suche nach Informationen in Excel-Tabellen erheblich vereinfachen und beschleunigen. Dies kann besonders nützlich sein, wenn Sie mit großen Datenmengen arbeiten oder wenn Sie bestimmte Informationen in mehreren Arbeitsblättern gleichzeitig finden müssen.