Zum Hauptinhalt springen

Wie kann ich mit Powershell die Anzahl der Zeilen in Excel zählen

Microsoft Excel ist eines der beliebtesten Werkzeuge für die Arbeit mit Tabellen und Daten. Wenn Sie mit großen Tabellen arbeiten, müssen Sie häufig die Anzahl der Zeilen in einer Excel-Datei ermitteln. Anstatt diese Informationen manuell zu berechnen, können Sie Powershell verwenden, eine leistungsstarke Programmiersprache und Befehlszeilenschnittstelle von Microsoft.

Powershell bietet Tools zum Automatisieren von Aufgaben und Arbeiten mit verschiedenen Dateiformaten, einschließlich Excel. Mit einem kleinen Skript in Powershell können Sie ganz einfach die Anzahl der Zeilen in einer Excel-Datei zählen, ohne sie in Excel öffnen zu müssen.

Um die Anzahl der Zeilen in einer Excel-Datei mithilfe von Powershell zu berechnen, müssen Sie das ImportExcel-Modul verwenden, das praktische Cmdlets für die Arbeit mit Excel-Tabellen bereitstellt. Nach der Installation dieses Moduls können Sie das Cmdlet Get-ExcelSheetInfo verwenden, um Informationen zum Inhalt der Excel-Datei abzurufen.

Zählen der Zeilenanzahl in Excel mit Powershell

Um zu beginnen, müssen Sie das Modul für die Arbeit mit Excel in Powershell installieren. Führen Sie den folgenden Befehl an einer Eingabeaufforderung aus:

Install-Module -Name ImportExcel

Nach der Installation können wir das Modul verwenden, um eine Excel-Datei zu öffnen, ihre Daten zu lesen und die Anzahl der Zeilen zu zählen. Hier ist ein Beispiel für ein Powershell-Skript, das diese Aufgabe ausführt:

  1. Öffnen Sie das Terminal.
  2. Installieren Sie das Homebrew-Paketverwaltungspaket, indem Sie den folgenden Befehl eingeben und die Eingabetaste drücken: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
  3. Wenn Sie aufgefordert werden, die Installation des Homebrew-Pakets zu bestätigen, drücken Sie die Eingabetaste.
  4. Führen Sie nach der Installation von Homebrew den folgenden Befehl aus, um Powerhell zu installieren: brew cask install powershell
  5. Die Installation kann einige Zeit in Anspruch nehmen.
  1. Öffnen Sie das Terminal.
  2. Führen Sie den folgenden Befehl aus, um das Powershell-Repository hinzuzufügen: wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb
  3. Führen Sie den folgenden Befehl aus, um ihn zu installieren: sudo dpkg -i packages-microsoft-prod.deb
  4. Führen Sie den folgenden Befehl aus, um den Paketindex zu aktualisieren: sudo apt-get update
  5. Führen Sie den folgenden Befehl aus, um Powershell zu installieren: sudo apt-get install -y powershell

Anschließend können Sie die gewünschte Excel-Datei mit der Open-Methode öffnen:

$workbook = $excel.Workbooks.Open("путь_к_файлу")

Nach dem Öffnen der Datei können Sie die erforderlichen Vorgänge ausführen. Sie können beispielsweise auf ein bestimmtes Arbeitsblatt zugreifen:

$worksheet = $workbook.Worksheets.Item(1)

Sie können jetzt mit den Daten im Arbeitsblatt arbeiten, die Zellenwerte ändern, die Daten lesen usw.

Nachdem Sie die Datei beendet haben, können Sie sie schließen:

$workbook.Close()

Schließlich müssen Sie die vom Excel-Objekt verwendeten Ressourcen freigeben.Application:

$excel.Quit()[System.Runtime.Interopservices.Marshal]::ReleaseComObject($worksheet)[System.Runtime.Interopservices.Marshal]::ReleaseComObject($workbook)[System.Runtime.Interopservices.Marshal]::ReleaseComObject($excel)[System.GC]::Collect()[System.GC]::WaitForPendingFinalizers()

Auf diese Weise können Sie mit Powershell eine Excel-Datei ganz einfach öffnen, die erforderlichen Datenoperationen ausführen und die Datei schließen, um Ressourcen freizugeben.

Zählen von Zeilen in Excel mit Powershell

Wenn Sie mit Excel-Dateien in Powershell arbeiten, treten häufig Situationen auf, in denen Sie die Anzahl der Zeilen in einer Tabelle zählen müssen. Glücklicherweise kann dies mit Powershell sehr einfach durchgeführt werden.

Der erste Schritt besteht darin, das Microsoft Excel-Modul zu installieren, wenn es noch nicht auf Ihrem Computer vorhanden ist. Sie können dies tun, indem Sie den folgenden Befehl in Powershell ausführen:

Install-Module -Name ImportExcel

Nach der Installation des Moduls können Sie den Befehl "Get-ExcelSheetInfo" verwenden, um Informationen über die Excel-Datei abzurufen, einschließlich der Anzahl der Zeilen in der Tabelle. Hier ist ein Beispielcode:

Import-Module -Name ImportExcel$ExcelFile = "C:\Путь_к_Файлу\файл.xlsx"$SheetName = "Лист1"$ExcelInfo = Get-ExcelSheetInfo -Path $ExcelFile -WorksheetName $SheetName$RowCount = $ExcelInfo.RowCountWrite-Output "Количество строк в таблице: $RowCount"

Im obigen Beispiel importieren wir zuerst das ImportExcel-Modul, um den Befehl Get-ExcelSheetInfo zu verwenden. Dann geben wir den Pfad zur Excel-Datei und den Namen des Arbeitsblatts an, an dem wir interessiert sind.

Nach dem Ausführen des Befehls Get-ExcelSheetInfo erhalten wir Informationen über die Excel-Datei, einschließlich der Anzahl der Zeilen im angegebenen Arbeitsblatt. Wir speichern diesen Wert in der Variablen $rowCount und geben ihn mit dem Befehl Write-Output auf dem Bildschirm aus.

Da Sie nun wissen, wie Sie die Anzahl der Zeilen in Excel mit Powershell berechnen können, können Sie diese Informationen leicht verwenden, um verschiedene Aufgaben im Zusammenhang mit der Verarbeitung von Excel-Dateien auszuführen.

Behandeln von Fehlern und Ausnahmen

Wenn Sie mit Powershell arbeiten und Daten in Excel verarbeiten, müssen Sie möglicherweise Fehler und Ausnahmen behandeln. Durch die Fehlerbehandlung wird verhindert, dass das Programm bei einem Fehler unerwünscht beendet wird und der Code weiterhin ausgeführt wird.

Powershell verwendet try , catch , finally-Konstrukte, um Fehler und Ausnahmen zu behandeln. Im try-Block wird der Code angegeben, in dem der Fehler auftreten kann. Wenn ein Fehler auftritt, wird die Codeausführung in einen Catch-Block verschoben, in dem Sie den Fehler behandeln und weitere Aktionen ausführen können. Der finally-Block wird immer nach dem try- und Catch-Block ausgeführt, unabhängig davon, ob Fehler vorliegen.

Beispiel für die Fehlerbehandlung bei der Zeilenanzahl in Excel:

try catch finally

In diesem Beispiel wird eine Excel-Anwendung gestartet, eine Datei geöffnet, das erste Arbeitsblatt ausgewählt und die Anzahl der Zeilen gezählt. Wenn ein Fehler auftritt, wird im Catch-Block eine Fehlermeldung angezeigt. Der finally-Block schließt die Datei und beendet die Excel-Anwendung.

Die Fehler- und Ausnahmebehandlung in Powershell verhindert, dass ein Programm vorzeitig beendet wird, und ermöglicht eine flexiblere Steuerung der Codeausführung.

Schließen einer Excel-Datei und Freigeben von Speicher

Nachdem wir die Excel-Datei mit PowerShell beendet haben, ist es wichtig, die Datei ordnungsgemäß zu schließen und Speicherplatz freizugeben, um Ressourcenlecks zu vermeiden. Hier sind einige Schritte, die Ihnen dabei helfen, dies zu erreichen.

1. Arbeitsmappe schließen:

$workbook.Close()

2. Schließen von Excel:

$excel.Quit()

3. Speicher freigeben:

[System.Runtime.InteropServices.Marshal]::ReleaseComObject($range)
[System.Runtime.InteropServices.Marshal]::ReleaseComObject($worksheet)
[System.Runtime.InteropServices.Marshal]::ReleaseComObject($workbook)
[System.Runtime.InteropServices.Marshal]::ReleaseComObject($excel)
[System.GC]::Collect()
[System.GC]::WaitForPendingFinalizers()

Nachdem Sie diese Schritte ausgeführt haben, wird die Datei geschlossen, der Speicher wird freigegeben und die Ressourcen werden ordnungsgemäß entsorgt. Dies ist besonders wichtig, wenn Sie mit vielen Excel-Dateien arbeiten oder sich wiederholende Aufgaben automatisieren.