Hallo zusammen,
ich würde gerne Passwortgeschützte xlsx-Files in Alteryx einlesen, um den Passwort Schutz aufheben & als neue Datei abzuspeichern. Hierzu bin ich auf folgendes Tutorial gestoßen, welches mir sehr weitergeholfen hat.
Jedoch weicht meine Input Datei von der Datei ab, welche im Tutorial genutzt wird.
Ich hatte mir vorgestellt, dass mein Input nicht nur ein Wort enthält sondern bspw. einen Header und die wichtigen Informationen dann in weiteren Reihen des Sheets (siehe nachstehendes Bild).
Wenn ich jedoch die Codierung analog zum obengenannten Tutorial durchführe, wird jeweils nur ein Wort geladen. In dem Fall "Header".
Ich schätze, der Fehler liegt am R Code? Ich bin hier nicht leider nicht auf eine Lösung gekommen.
Ich hoffe, Ihr könnt mir weiterhelfen.
Vielen Dank und viele Grüße
Joma
Gelöst! Gehe zu Lösung.
Hallo @Joma,
Vielen Dank für Deine Frage!
Ich bin mir sicher @grossal, @RolandSchubert, @dthiessen, @PhilippK, @OliverW, @reply_mueller werden Ihnen helfen können! Sie sind Experte😎!
Einen schönen Tag,
Hallo @Joma ,
entschuldige die späte Antwort. Leider ist es etwas schwierig auf die Entfernung zu bewerten weshalb der R Code nur eine Spalte zurückgibt.
Ich werde mir das heute nach der Arbeit einmal anschauen - grundsätzlich gibt es allerdings mehrere möglichkeiten hier zum Ziel zu kommen.
Gruß
Johannes
Hallo Joma,
kannst du den Zusatz header = TRUE nach filename ausprobiert? Ich denke, dass er nach Spaltenüberschriften sucht und diese dann mit "Header" findet. Da dann nichts weiterkommt, liest er nur das ein.
Doku zum Excel Read-In mit R.
https://www.rdocumentation.org/packages/excel.link/versions/0.9.8-1/topics/xl.read.file
Gruß
Sebastian
Hallo zusammen,
danke für eure Hilfe.
Header = True habe ich gerade ausprobiert, hat jedoch nichts geändert.
Aufgrund folgendes Fehlers kann ich leider den Excel File nicht hochladen.
- Der Inhaltstyp (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet) des Anhangs password_protected_file.xlsx stimmt nicht mit dessen Dateierweiterung überein und wurde entfernt.
Das würde die Problematik vllt vereinfachen. Den yxmd. file habe ich angehängt. Der Excel schaut genau so aus wie oben dargestellt und das Passwort lautet: alteryx
VG
Joma
Hey @Joma,
ich kam leider erst heute dazu mir deinen Code anzuschauen - und habe mal kurz, weil das benutzte R Paket nicht meine Stärke ist, die Dokumentation dazu angesehen.
Siehe da:
Details
xl.read.file reads only rectangular data set. It is highly recommended to have all column names
and ids in data set. Orphaned rows/columns located apart from the main data will be ignored.
xl.save.file can save all objects for which xl.write method exists - see examples.
D.h. mit xl.read.file werden nur Daten in einem rechteckigen ununterbrochenen Format akzeptiert - das größte Rechteck, was in deiner Datei von 'A1' aus gefunden werden kann ist natürlich 'A1:A1' -> Header.
Du hast nun mehrere Möglichkeiten: Entweder du setzt 'top.left.cell' auf 'A5' und 'header = TRUE' also folglich
excel_data <- xl.read.file(filename, top.left.cell='A5', header = TRUE, password = excel_pwd, write.res.password=excel_pwd)
Dann bekämst du folgendes Ergebnis:
Ich habe es auch mal mit dem Python Modul versucht und einfach mal diese Antwort von Stackoverflow geklaut. Damit komme ich zum Ziel - das liegt aber auch daran, dass ich mich mit Python gut und mit R nur Mittelgut auskenne :).
Gruß,
Johannes (Blue Reply)
Hallo @Joma,
War diese Antwort von @reply_mueller für Sie hilfreich? Wenn Ihnen die Antwort geholfen hat, können Sie diese als „Lösung akzeptieren“. Sie wird sicherlich auch anderen Benutzern helfen!
Danke!
FYI: Die Alteryx DACH User Group geht in die nächste Runde! Am Dienstag den 24.11 ist es wieder soweit! Auch diesmal haben wir spannende Themen und Use Cases für euch vorbereitet. Gerne können Sie sich jetzt schon anmelden!