Registriert seit: 06.12.2015
Version(en): 2016
30.10.2019, 13:07
(Dieser Beitrag wurde zuletzt bearbeitet: 30.10.2019, 13:07 von Fennek.)
Deine TXT-Datei ist ein Excel-Sheet und deine xlsx-Datei eine TXT-Datei (json).
Bekommst Du immer ein "Päarchen"? Also könnte man aus der json-Datei mit den VBA String-Befehlen den Namen herausholen und dann umbennen?
Falls es eine json-Datei mit vielen Inhalten geben würde, wäre ein json-Parser besser.
------------
Vorschlag:
dieser Code reicht um die "ID" und den "File-Name" auszulesen. Es fehlt nur der "Rename"-Befehl:
Code:
$json = get-content C:\Users\User\Desktop\document-63d27016-018f-4e16-881e-1cea45c05c99.json | ConvertFrom-Json
$json.id
$ren = $json.fileName.Split()
$ren[0]
$ren[1]
(Powershell, aktuelle Version)
Registriert seit: 06.12.2015
Version(en): 2016
Hallo,
mit den beiden hochgeladenen Dateien als Beispiel sollte dieser Code gehen, um alle Paare (Dat + json) eines Ordners umzubennen. Es wurde lediglich das Leerzeichen im Filename der json gelöscht.
Code:
$Path = 'C:\Users\User\Desktop\'
foreach ($F in get-item ($Path + '*.json')) {
$alt = $Path + $f.Name.Replace('json', 'dat')
$alt
$file = Get-Content $f | ConvertFrom-Json
$neu = $file.filename
rename-item $alt $neu
}
Registriert seit: 29.09.2015
Version(en): 2030,5
Du kannst alle Dateien gezipt hochladen.
Registriert seit: 29.09.2015
Version(en): 2030,5
30.10.2019, 16:22
(Dieser Beitrag wurde zuletzt bearbeitet: 30.10.2019, 16:22 von snb.)
Dieser Code reicht:
Code:
Sub M_snb()
c00 = "J:\Download\document-63d27016-018f-4e16-881e-1cea45c05c99"
Name c00 & ".dat" As "J:\download\" & Replace(Split(Split(CreateObject("scripting.filesystemobject").opentextfile(c00 & ".json").readall, ",")(1), ": """)(1), Chr(34), "")
End Sub
Registriert seit: 08.10.2019
Version(en): 2016
31.10.2019, 15:27
(Dieser Beitrag wurde zuletzt bearbeitet: 31.10.2019, 15:28 von Noob55.)
Hallo Fennek,
ja genau, weil ich die JSON und DAT so nicht hochladen konnte habe ich die beiden beliebig umbenannt.
In deinem Code wird diese eine spezielle Datei angesprochen. Ich brauche dies für alle Pärchen in dem Ordner. Meine Idee wäre das ganze möglichst simpel zu halten.
Meine Idee:
Schritt 1:
In einem Excel Sheet alle JSONs neben die dazugehörigen DATS auflisten
Schritt 2:
Durch Makro alle JSONs öffnen und die dazugehörigen Filenames in Spalte C auflisten
Schritt 3:
Durch =links(bis Zum Punkt) Befehl nur die Endungen filtern
Schritt 4:
Durch =wechseln Befehl alle .DATs durch die neuen Endungen ersetzten
Schritt 5:
Durch Editor Funktion Ren alter Name Neuer Name alle Dats umbenennen.
Ich benötige nur Schritt 2 in Form eines Makros
Hallo,
auch dein Code spricht nur ein bestimmtes Dokument an
Registriert seit: 06.12.2015
Version(en): 2016
mein Code unter #22 sollte für alle *.json in einem Ordner laufen
Registriert seit: 29.09.2015
Version(en): 2030,5
Du hast nun eine 99%- ige Lösung bekommen.
Dieses Forum ist kein umsonstige Sofwarefirma.
Wir schaffen nur Hilfe.
Wenn du nicht im stand bist Vorschläge zu bewirten und zu bearbeiten solltest du und deine Firma einen Dienstleister damit beschäftigen.