Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Mit Powershell 1.0 über OLEDB geänderte Daten in XLSX zurück schreiben

Frage Entwicklung

Mitglied: Feuerstein08

Feuerstein08 (Level 1) - Jetzt verbinden

24.04.2010 um 20:51 Uhr, 4482 Aufrufe

Ich weiß nicht, ob das der "sinnvollste" Weg ist, aber es ist ein Anfang ...

Hallo zusammen,

ich möchte eine größere Excel Datei einlesen Inhalte überprüfen, ggf. ändern und dann in die XLS* zurückschreiben.
Nachdem ich nun eine Weile geGOOGLED habe, bin ich an diesem Punkt.

Ich kann eine XLSX Tabelle mittels OLEDB einlesen und Wert ändern, aber wie bekomme ich den Wert in die Tabelle zurückgeschrieben?

So sieht meine kleine Beispieltabelle aus:
bd296cfd4f05033d2fed672c268194e7 - Klicke auf das Bild, um es zu vergrößern

Und hier der Code soweit:
01.
cls 
02.
 
03.
#Pfad zur XLSX 
04.
$filepath = "C:\1\test.xlsx" 
05.
#Connection String für Excel 2007: 
06.
$connString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=`"$filepath`";Extended Properties=`"Excel 12.0 Xml;HDR=YES`";" 
07.
 
08.
$qry = 'select * from [Beispiel$]' 
09.
 
10.
####################### 
11.
function Get-ExcelData 
12.
13.
     param($connString, $qry='select * from [sheet1$]') 
14.
  
15.
    $conn = new-object System.Data.OleDb.OleDbConnection($connString) 
16.
    $conn.open() 
17.
    $cmd = new-object System.Data.OleDb.OleDbCommand($qry,$conn)  
18.
    $da = new-object System.Data.OleDb.OleDbDataAdapter($cmd)  
19.
    $dt = new-object System.Data.dataTable  
20.
    [void]$da.fill($dt) 
21.
	 
22.
    $conn.close() 
23.
    $dt 
24.
  
25.
} #Get-ExcelData 
26.
  
27.
####################### 
28.
function Write-DataToXLSX 
29.
{  
30.
??? 
31.
  
32.
}# Write-DataTableToXLSX 
33.
  
34.
####################### 
35.
$dt = Get-ExcelData $connString $qry 
36.
$dt[1].Vorname 
37.
$dt[1].Vorname = "Maus" 
38.
$dt[1].Vorname 
39.
 
Ich habe also einen Vornamen geändert - und wie bekomme ich das wieder in meine Tabelle und wie speichere ich die Tabelle dann?
Da ich in über 5000 Datensätzen nach xxx Usern suchen muss, Änderungen vornehme und dann wieder zurückschreiben muss, ist eine performante Bearbeitung notwendig. Ist das der beste Weg?

Vielen Dank für jede Hilfe!
Feuerstein08
Ähnliche Inhalte
Neue Wissensbeiträge
Heiß diskutierte Inhalte
iOS
16 iPads zentrall verwalten (18)

Frage von simonlohr zum Thema iOS ...

Viren und Trojaner
Ransomware .nm4 (15)

Frage von Zyklo92 zum Thema Viren und Trojaner ...

Windows 7
Freeware MSI Tool (13)

Frage von uridium69 zum Thema Windows 7 ...

Microsoft Office
gelöst VBA Excel Problem mit UserForm, ListBox und TextBox (12)

Frage von abuelito zum Thema Microsoft Office ...