json Datei automatisch umbenennen - VBA
#21
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)
Top
#22
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

}
Top
#23
Du kannst alle Dateien gezipt hochladen.
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Top
#24
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
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Top
#25
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
Top
#26
mein Code unter #22 sollte für alle *.json in einem Ordner laufen
Top
#27
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.
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste