Excel-Zellen addieren
Guten Abend an alle,
ich möchte gerne am besten über Batch oder Shell Zellen ab A2 und B2 zusammenrechnen.Das Ergebnis soll in Spalte C stehen. Ist da was möglich mit Batch oder Shell?
Beste Grüße.
ich möchte gerne am besten über Batch oder Shell Zellen ab A2 und B2 zusammenrechnen.Das Ergebnis soll in Spalte C stehen. Ist da was möglich mit Batch oder Shell?
Beste Grüße.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 472018
Url: https://administrator.de/forum/excel-zellen-addieren-472018.html
Ausgedruckt am: 03.04.2025 um 08:04 Uhr
7 Kommentare
Neuester Kommentar
Moin,
lg,
Slainte
About 3.140.000 results (0,49 seconds)
https://www.google.com/search?q=read+and+write++excel+with+powershelllg,
Slainte
Servus @freshman2017,
Damit hier ab und zu mal wieder was konstruktives steht als nur noch Verweise zu Google weil man meint zu jedem Thread was schreiben zu müssen um Punkte zu sammeln, bitte:
Grüße Uwe
Damit hier ab und zu mal wieder was konstruktives steht als nur noch Verweise zu Google weil man meint zu jedem Thread was schreiben zu müssen um Punkte zu sammeln, bitte:
VBS:
strPfad = "D:\freshman2017\mappe.xlsx"
Set objExcel = CreateObject("Excel.Application")
objExcel.DisplayAlerts = False
objExcel.Visible = True
With objExcel.Workbooks.Open(strPfad).Sheets(1)
.Range("C2").Formula = "=$A2+$B2"
.Range("C2").AutoFill .Range("C2:C" & .Cells(.Rows.Count,"A").End(-4162).Row)
.Parent.Save
.Parent.Close True
End With
objExcel.DisplayAlerts = True
objExcel.Quit()
Powershell
# Quelldatei
$quelle = 'D:\freshman2017\mappe.xlsx'
# Excel Objekt
$objExcel = New-Object -Com Excel.Application
# Mappe öffnen
$wb = $objExcel.Workbooks.Open($quelle)
# Excel anzeigen
$objExcel.Visible = $true
$objExcel.DisplayAlerts = $false
# Arbeitsblatt definieren
$ws = $wb.Sheets.Item(1)
# Formel in C2 eintragen
$ws.Range("C2").Formula = '=$A2+$B2'
# Autofill der Formeln in Spalte C vornehmen
$ws.Range("C2").AutoFill($ws.Range("C2:C" + $ws.Cells($ws.Rows.Count,"A").End(-4162).Row))
# Datei speichern
$wb.Save()
$objExcel.DisplayAlerts = $true
# Dokument schließen
$wb.Close($false)
# Excel schließen
$objExcel.Quit()
# Ressourcen freigeben
[System.Runtime.InteropServices.Marshal]::ReleaseComObject($objExcel)
Zitat von @freshman2017:
was kann ich tun, dass das VBS Script im Hintergrund arbeitet
und die Excel Sheet im Hintergrund bearbeitet?
Wofür steht wohl Zeile 4?! Genau, damit steuerst du das, was kann ich tun, dass das VBS Script im Hintergrund arbeitet
und die Excel Sheet im Hintergrund bearbeitet?
True
für sichtbar, False
für unsichtbar.objExcel.Visible = False
In der Spalte C stehen jetzt die Formeln und nicht die Werte, kann man das auch anpassen? 
Ja schalte in deinem Excel die Anzeige der Formeln statt der Werte ab.Geht hier einwandfrei.
Moin,
Mit ImportExcel für Powershell würde dass dann so aussehen:
Zitat von @freshman2017:
ich möchte gerne am besten über Batch oder Shell Zellen ab A2 und B2 zusammenrechnen.Das Ergebnis soll in Spalte C stehen. Ist da was möglich mit Batch oder Shell?
ohne eine Krücke über Excel zu bauen, nur, wenn die Spalten überschriften haben.ich möchte gerne am besten über Batch oder Shell Zellen ab A2 und B2 zusammenrechnen.Das Ergebnis soll in Spalte C stehen. Ist da was möglich mit Batch oder Shell?
Mit ImportExcel für Powershell würde dass dann so aussehen:
$xlsx=Import-Excel -Path "C:\Temp\Admin.xlsx" -WorksheetName "Tabelle1"
ForEach ($Line in $xlsx){
$Line.SpalteC=$Line.SpalteA+$Line.SpalteB
}
$xlsx | Export-Excel -Path "C:\Temp\Admin.xlsx" -WorksheetName "Tabelle1"