Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Werte aus Smartmeter Adapter in Excel exportieren

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.5k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.8k

Werte aus Smartmeter Adapter in Excel exportieren

Geplant Angeheftet Gesperrt Verschoben JavaScript
45 Beiträge 9 Kommentatoren 6.6k Aufrufe 13 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • P Pat

    @fastfoot
    da ich schon andere dateien raus lese wurde ich sagen das er richtig gemounted ist. Aber ich habe noch nie geschrieben.
    Berechtigung.png

    Das wird wieder eine lange suche

    F Offline
    F Offline
    fastfoot
    schrieb am zuletzt editiert von
    #17

    @pat dann beantworte die Frage wie der Ordner gemounted wird!

    iobroker läuft unter Docker auf QNAP TS-451+
    SkriptRecovery: https://forum.iobroker.net/post/930558

    P 1 Antwort Letzte Antwort
    0
    • P Pat

      @fastfoot
      da ich schon andere dateien raus lese wurde ich sagen das er richtig gemounted ist. Aber ich habe noch nie geschrieben.
      Berechtigung.png

      Das wird wieder eine lange suche

      bahnuhrB Online
      bahnuhrB Online
      bahnuhr
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #18

      @pat
      Ich bin absolut Linux Laie.
      Aber gibt es nicht den 777 Befehl.
      Damit müsste doch alle Rechte dann da sein.


      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
      Danke.
      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
      ScreenToGif :https://www.screentogif.com/downloads.html

      F 1 Antwort Letzte Antwort
      0
      • bahnuhrB bahnuhr

        @pat
        Ich bin absolut Linux Laie.
        Aber gibt es nicht den 777 Befehl.
        Damit müsste doch alle Rechte dann da sein.

        F Offline
        F Offline
        fastfoot
        schrieb am zuletzt editiert von
        #19

        @bahnuhr sagte in Werte aus Smartmeter Adapter in Excel exportieren:

        @pat
        Ich bin absolut Linux Laie.
        Aber gibt es nicht den 777 Befehl.
        Damit müsste doch alle Rechte dann da sein.

        nein!

        iobroker läuft unter Docker auf QNAP TS-451+
        SkriptRecovery: https://forum.iobroker.net/post/930558

        bahnuhrB 1 Antwort Letzte Antwort
        0
        • F fastfoot

          @bahnuhr sagte in Werte aus Smartmeter Adapter in Excel exportieren:

          @pat
          Ich bin absolut Linux Laie.
          Aber gibt es nicht den 777 Befehl.
          Damit müsste doch alle Rechte dann da sein.

          nein!

          bahnuhrB Online
          bahnuhrB Online
          bahnuhr
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #20

          @fastfoot sagte in Werte aus Smartmeter Adapter in Excel exportieren:

          nein!

          Ich sag es ja.
          War ein Versuch.


          Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
          Danke.
          gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
          ScreenToGif :https://www.screentogif.com/downloads.html

          1 Antwort Letzte Antwort
          0
          • F fastfoot

            @pat dann beantworte die Frage wie der Ordner gemounted wird!

            P Offline
            P Offline
            Pat
            schrieb am zuletzt editiert von Pat
            #21

            @fastfoot said in Werte aus Smartmeter Adapter in Excel exportieren:

            @pat dann beantworte die Frage wie der Ordner gemounted wird!

            im /etc/fstab dies

            //192.168.0.10/Dokumente/IObroker /mnt/NAS cifs uid=1000,gid=1000,rw,user,credentials=/home/pat/.smbzugang,vers=2.0  0 0
            

            eingetragen und im /home/pat/.smbzugang die zugangsdaten

            F 1 Antwort Letzte Antwort
            0
            • bahnuhrB Online
              bahnuhrB Online
              bahnuhr
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #22

              @fastfoot
              sudo mount -t cifs -o user=xxx,password=xxx,file_mode=0777,dir_mode=0777 //192.168.243.100/1_Sound /mnt

              Ich hatte das so realisiert.
              Und da ist doch dieses 777 mit drin ?

              Hatte ich hier aus dem Forum.


              Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
              Danke.
              gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
              ScreenToGif :https://www.screentogif.com/downloads.html

              P 1 Antwort Letzte Antwort
              0
              • bahnuhrB bahnuhr

                @fastfoot
                sudo mount -t cifs -o user=xxx,password=xxx,file_mode=0777,dir_mode=0777 //192.168.243.100/1_Sound /mnt

                Ich hatte das so realisiert.
                Und da ist doch dieses 777 mit drin ?

                Hatte ich hier aus dem Forum.

                P Offline
                P Offline
                Pat
                schrieb am zuletzt editiert von
                #23

                @bahnuhr
                bin auch schon auf die Idee gekommen mit

                /mnt/NAS$ chmod -v 777 test.xlsx
                mode of 'test.xlsx' changed from 0755 (rwxr-xr-x) to 0777 (rwxrwxrwx)
                
                

                er führt es aus aber behält es nicht

                1 Antwort Letzte Antwort
                0
                • P Pat

                  @fastfoot said in Werte aus Smartmeter Adapter in Excel exportieren:

                  @pat dann beantworte die Frage wie der Ordner gemounted wird!

                  im /etc/fstab dies

                  //192.168.0.10/Dokumente/IObroker /mnt/NAS cifs uid=1000,gid=1000,rw,user,credentials=/home/pat/.smbzugang,vers=2.0  0 0
                  

                  eingetragen und im /home/pat/.smbzugang die zugangsdaten

                  F Offline
                  F Offline
                  fastfoot
                  schrieb am zuletzt editiert von
                  #24

                  @pat füge mal noch ,file_mode=0777,dir_mode=0777 ein, rw reicht da nicht

                  iobroker läuft unter Docker auf QNAP TS-451+
                  SkriptRecovery: https://forum.iobroker.net/post/930558

                  bahnuhrB P 2 Antworten Letzte Antwort
                  1
                  • F fastfoot

                    @pat füge mal noch ,file_mode=0777,dir_mode=0777 ein, rw reicht da nicht

                    bahnuhrB Online
                    bahnuhrB Online
                    bahnuhr
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #25

                    @fastfoot
                    @Pat

                    Und dann hatte ich noch diesen Text im Web gefunden:

                    Befehl in konsole:
                    sudo mount -t cifs -o user=xxx,password=xxx,file_mode=0777,dir_mode=0777 //192.168.243.100/1_Sound /mnt

                    Das gemountete Verzeichnis steht bei Verwendung des mount-Befehls nur bis zu einem Neustart des Rechners
                    zur Verfügung. Damit die Windows-Freigabe automatisch beim Start des Systems eingebunden werden kann,
                    ist ein Eintrag in der Datei /etc/fstab notwendig. In dieser Datei sind alle Dateisysteme, welche vom
                    System gemountet werden sollen, eingetragen.

                    WINDOWS-FREIGABE ÜBER "FSTAB" EINHÄNGEN
                    Bei der Datei fstab (file system table) handelt es sich um eine normale ASCII-Datei. Der Eintrag kann
                    mit einem entsprechenden Editor vorgenommen werden.

                    nano /etc/fstab

                    //192.168.243.100/1_Sound /mnt cifs user=xxx,password=xxx,file_mode=0777,dir_mode=0777

                    Um zu prüfen, ob der Eintrag korrekt ist und das mounten klappt, muss der Rechner nicht neu gestartet
                    werden. Mit dem Kommando mount und der Option -a werden alle in der fstab eingetragenen Dateisysteme
                    gemountet. Damit das Ergebnis des Vorgangs auf dem Bildschirm erscheint, kann zusätzlich die Option v
                    verwendet werden.

                    mount -av

                    Für das "Aushängen" der Quelle steht der Befehl umount zur Verfügung.

                    umount /mnt

                    mfg
                    Dieter


                    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                    Danke.
                    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                    ScreenToGif :https://www.screentogif.com/downloads.html

                    1 Antwort Letzte Antwort
                    0
                    • F fastfoot

                      @pat füge mal noch ,file_mode=0777,dir_mode=0777 ein, rw reicht da nicht

                      P Offline
                      P Offline
                      Pat
                      schrieb am zuletzt editiert von
                      #26

                      @fastfoot said in Werte aus Smartmeter Adapter in Excel exportieren:

                      @pat füge mal noch ,file_mode=0777,dir_mode=0777 ein, rw reicht da nicht

                      jap das wars

                      bahnuhrB 1 Antwort Letzte Antwort
                      0
                      • P Pat

                        @fastfoot said in Werte aus Smartmeter Adapter in Excel exportieren:

                        @pat füge mal noch ,file_mode=0777,dir_mode=0777 ein, rw reicht da nicht

                        jap das wars

                        bahnuhrB Online
                        bahnuhrB Online
                        bahnuhr
                        Forum Testing Most Active
                        schrieb am zuletzt editiert von
                        #27

                        @fastfoot

                        Und warum schreibt du vorne 777 ist es nicht ?
                        Komisch.


                        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                        Danke.
                        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                        ScreenToGif :https://www.screentogif.com/downloads.html

                        F 1 Antwort Letzte Antwort
                        0
                        • bahnuhrB bahnuhr

                          @fastfoot

                          Und warum schreibt du vorne 777 ist es nicht ?
                          Komisch.

                          F Offline
                          F Offline
                          fastfoot
                          schrieb am zuletzt editiert von
                          #28

                          @bahnuhr sagte in Werte aus Smartmeter Adapter in Excel exportieren:

                          @fastfoot

                          Und warum schreibt du vorne 777 ist es nicht ?
                          Komisch.

                          weil mit der 777 Befehl doch sicherlich chmod 777 gemeint war, zumal da noch nicht klar war wie das gemounted wird. file_mode und dir_mode wiederum sind keine Befehle :-)

                          Du darfst aber jetzt das absolut vor absolut Linux Laie entfernen :wink:

                          iobroker läuft unter Docker auf QNAP TS-451+
                          SkriptRecovery: https://forum.iobroker.net/post/930558

                          frana120500F 1 Antwort Letzte Antwort
                          0
                          • F fastfoot

                            @bahnuhr sagte in Werte aus Smartmeter Adapter in Excel exportieren:

                            @fastfoot

                            Und warum schreibt du vorne 777 ist es nicht ?
                            Komisch.

                            weil mit der 777 Befehl doch sicherlich chmod 777 gemeint war, zumal da noch nicht klar war wie das gemounted wird. file_mode und dir_mode wiederum sind keine Befehle :-)

                            Du darfst aber jetzt das absolut vor absolut Linux Laie entfernen :wink:

                            frana120500F Offline
                            frana120500F Offline
                            frana120500
                            schrieb am zuletzt editiert von
                            #29

                            Mir ist das in der Tat zu kompliziert, da ich zu wenig Kenntnisse habe.

                            Ich scheitere schon daran, dass ich nicht weiß, wie ich einen lokalen Pfad auf meinem Rechner mounten kann.

                            Ich gehe jetzt den Weg anders herum und lasse aus Excel heraus den Wert über den Simple API Adapter per getPlainValue abfragen. Funktioniert prima

                            1 Antwort Letzte Antwort
                            0
                            • P Pat

                              @fastfoot
                              Verbuchen wir es mal unter "es war spät"

                              So daten lesen aus den Cellen funktioniert aber irgendwie klappt das schreiben nicht.

                              const ExcelJS = require('exceljs');
                              var workbook = new ExcelJS.Workbook();
                              
                              workbook.xlsx.readFile('/mnt/NAS/test.xlsx').then(function() {
                              var worksheet = workbook.getWorksheet('test');
                              
                              console.log (worksheet.getCell('A1').value);
                              log (worksheet.getCell(1,3).value);
                              
                                  worksheet.getCell('A3').value = 'Hallo Welt'; // einer Zelle einen Wert zuweisen
                                  workbook.xlsx.writeFile('/mnt/NAS/test.xlsx'); // Excel wird neu gespeichert
                              });
                              
                              
                              F Offline
                              F Offline
                              franzda
                              schrieb am zuletzt editiert von
                              #30

                              @pat Hallo es ist zwar schon eine Weile her aber trotzden eine Frage zu eurem Thema

                              Ich habe mit sudo npm -i exceljs installiert

                              Trotzdem bekomme ich die Fehlermeldung (s.u.)
                              Was muss ich noch machen damit ich in iobroker javascript excel benutzen kann.

                              Wollte einfach testen: schon bei der script eingabe wird 'exceljs" unterstrichen.

                              var Excel = require('exceljs');
                              
                              const wb = new Excel.Workbook();
                              const ws = wb.addWorksheet('My Sheet');
                              
                              ws.addRows([
                                  [1, 2, 3, 4, 5],
                                  [6, 7, 8, 9, 10],
                                  [11, 12, 13, 14, 15],
                                  [16, 17, 18, 19, 20]]
                              );
                              
                              
                              javascript.0
                              2022-11-17 11:39:15.051	error	at require (node:internal/modules/cjs/helpers:103:18)
                              
                              javascript.0
                              2022-11-17 11:39:15.050	error	at Module.require (node:internal/modules/cjs/loader:1057:19)
                              
                              javascript.0
                              2022-11-17 11:39:15.050	error	script.js.common.iobroker1.test.excel1: Error: Cannot find module 'exceljs'
                              
                              P 1 Antwort Letzte Antwort
                              0
                              • F franzda

                                @pat Hallo es ist zwar schon eine Weile her aber trotzden eine Frage zu eurem Thema

                                Ich habe mit sudo npm -i exceljs installiert

                                Trotzdem bekomme ich die Fehlermeldung (s.u.)
                                Was muss ich noch machen damit ich in iobroker javascript excel benutzen kann.

                                Wollte einfach testen: schon bei der script eingabe wird 'exceljs" unterstrichen.

                                var Excel = require('exceljs');
                                
                                const wb = new Excel.Workbook();
                                const ws = wb.addWorksheet('My Sheet');
                                
                                ws.addRows([
                                    [1, 2, 3, 4, 5],
                                    [6, 7, 8, 9, 10],
                                    [11, 12, 13, 14, 15],
                                    [16, 17, 18, 19, 20]]
                                );
                                
                                
                                javascript.0
                                2022-11-17 11:39:15.051	error	at require (node:internal/modules/cjs/helpers:103:18)
                                
                                javascript.0
                                2022-11-17 11:39:15.050	error	at Module.require (node:internal/modules/cjs/loader:1057:19)
                                
                                javascript.0
                                2022-11-17 11:39:15.050	error	script.js.common.iobroker1.test.excel1: Error: Cannot find module 'exceljs'
                                
                                P Offline
                                P Offline
                                Pat
                                schrieb am zuletzt editiert von
                                #31

                                @franzda
                                js_ex.jpg

                                Hast du in deiner Javascriptinstanz exceljs eingefügt ??

                                bahnuhrB 1 Antwort Letzte Antwort
                                0
                                • P Pat

                                  @franzda
                                  js_ex.jpg

                                  Hast du in deiner Javascriptinstanz exceljs eingefügt ??

                                  bahnuhrB Online
                                  bahnuhrB Online
                                  bahnuhr
                                  Forum Testing Most Active
                                  schrieb am zuletzt editiert von
                                  #32

                                  @pat

                                  Das hab ich @franzda in seinem anderen thread schon gezeigt.
                                  Dort auch bisher keine Rückinfo.

                                  @franzda
                                  Bitte keine Doppelthreads


                                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                  Danke.
                                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                  ScreenToGif :https://www.screentogif.com/downloads.html

                                  H 1 Antwort Letzte Antwort
                                  2
                                  • bahnuhrB bahnuhr

                                    @pat

                                    Das hab ich @franzda in seinem anderen thread schon gezeigt.
                                    Dort auch bisher keine Rückinfo.

                                    @franzda
                                    Bitte keine Doppelthreads

                                    H Offline
                                    H Offline
                                    huhie
                                    schrieb am zuletzt editiert von
                                    #33

                                    Hey ho Zusammen,

                                    ich brauche euche geballte Ladung Wissen. Da ich mich mit diesem Skript echt schwer tue und nicht weiter komme... :(

                                    ich bin auf diesen Thread gestossen und habe mich daran versucht. Mein BKW läuft nun einwandfrei
                                    und ich würde gerade die Daten des Stromverbrauchs tgl. morgens, sagen wir um 8 Uhr, in eine Excel Tabelle schreiben wollen. Also Stromverbrauch und Stromeinspeisung.

                                    Ich nutze den iobroke auf einer synology.

                                    Der Ordner zu den Daten von iobroker liegt im Ordner nas/docker/iobroker/data

                                    Der Ordner in dem die datei liegt, welche geschrieben werden soll liegt im Ordner nas/oeffentlich/finanzen

                                    Wie mounte ich das Verzeichnis bzw. wie muss das Skript dann aussehen?

                                    Das Log sagt aktuell schon:

                                    javascript.0 error at Script.runInContext (node:vm:135:12)
                                    javascript.0 error at script.js.1.stromzaehler_nach_excel:13:3
                                    javascript.0 error at script.js.1.stromzaehler_nach_excel:2:28
                                    javascript.0 error script.js.1.stromzaehler_nach_excel: TypeError: Cannot read properties of undefined (reading 'Workbook')
                                    javascript.0 error at Script.runInContext (node:vm:135:12)
                                    javascript.0 error at script.js.1.stromzaehler_nach_excel:13:3
                                    javascript.0 error at script.js.1.stromzaehler_nach_excel:1:17
                                    javascript.0 error at require (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:516:32)
                                    javascript.0 error at require (node:internal/modules/cjs/helpers:121:18)
                                    javascript.0 error at Module.require (node:internal/modules/cjs/loader:1143:19)
                                    javascript.0 error script.js.1.stromzaehler_nach_excel: Error: Cannot find module 'exceljs'

                                    Das Module exceljs steht aber unter der Instanz javascript.0

                                    2023-08-24 14_20_25-instances - iobroker und 9 weitere Seiten - Persönlich – Microsoft​ Edge.png

                                    Mein Skript sieht aktuell wie folgt aus:

                                    const ExcelJS = require('exceljs');
                                    var workbook = new ExcelJS.Workbook();
                                     
                                    workbook.xlsx.readFile('/iobroker-data/zaehlerstaende/test.xlsx').then(function() {
                                    var worksheet = workbook.getWorksheet('test');
                                     
                                    console.log (worksheet.getCell('A1').value);
                                    log (worksheet.getCell(1,3).value);
                                     
                                        worksheet.getCell('A3').value = 'Hallo Welt'; // einer Zelle einen Wert zuweisen
                                        workbook.xlsx.writeFile('/iobroker-data/zaehlerstaende/test.xlsx'); // Excel wird neu gespeichert
                                    });
                                    

                                    Ich würde mich freuen, wenn mir hier jemand bis zum finalen funktionieren des Skriptes helfen könnte.

                                    Wird der Eintrag in der Excel dann jeden Tag überschrieben, oder kann man auch sagen, das immer eine Zelle weiter beschrieben wird? So dass es quasi eine Liste wird?

                                    viele Grüße Huhie

                                    OliverIOO bahnuhrB 2 Antworten Letzte Antwort
                                    0
                                    • H huhie

                                      Hey ho Zusammen,

                                      ich brauche euche geballte Ladung Wissen. Da ich mich mit diesem Skript echt schwer tue und nicht weiter komme... :(

                                      ich bin auf diesen Thread gestossen und habe mich daran versucht. Mein BKW läuft nun einwandfrei
                                      und ich würde gerade die Daten des Stromverbrauchs tgl. morgens, sagen wir um 8 Uhr, in eine Excel Tabelle schreiben wollen. Also Stromverbrauch und Stromeinspeisung.

                                      Ich nutze den iobroke auf einer synology.

                                      Der Ordner zu den Daten von iobroker liegt im Ordner nas/docker/iobroker/data

                                      Der Ordner in dem die datei liegt, welche geschrieben werden soll liegt im Ordner nas/oeffentlich/finanzen

                                      Wie mounte ich das Verzeichnis bzw. wie muss das Skript dann aussehen?

                                      Das Log sagt aktuell schon:

                                      javascript.0 error at Script.runInContext (node:vm:135:12)
                                      javascript.0 error at script.js.1.stromzaehler_nach_excel:13:3
                                      javascript.0 error at script.js.1.stromzaehler_nach_excel:2:28
                                      javascript.0 error script.js.1.stromzaehler_nach_excel: TypeError: Cannot read properties of undefined (reading 'Workbook')
                                      javascript.0 error at Script.runInContext (node:vm:135:12)
                                      javascript.0 error at script.js.1.stromzaehler_nach_excel:13:3
                                      javascript.0 error at script.js.1.stromzaehler_nach_excel:1:17
                                      javascript.0 error at require (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:516:32)
                                      javascript.0 error at require (node:internal/modules/cjs/helpers:121:18)
                                      javascript.0 error at Module.require (node:internal/modules/cjs/loader:1143:19)
                                      javascript.0 error script.js.1.stromzaehler_nach_excel: Error: Cannot find module 'exceljs'

                                      Das Module exceljs steht aber unter der Instanz javascript.0

                                      2023-08-24 14_20_25-instances - iobroker und 9 weitere Seiten - Persönlich – Microsoft​ Edge.png

                                      Mein Skript sieht aktuell wie folgt aus:

                                      const ExcelJS = require('exceljs');
                                      var workbook = new ExcelJS.Workbook();
                                       
                                      workbook.xlsx.readFile('/iobroker-data/zaehlerstaende/test.xlsx').then(function() {
                                      var worksheet = workbook.getWorksheet('test');
                                       
                                      console.log (worksheet.getCell('A1').value);
                                      log (worksheet.getCell(1,3).value);
                                       
                                          worksheet.getCell('A3').value = 'Hallo Welt'; // einer Zelle einen Wert zuweisen
                                          workbook.xlsx.writeFile('/iobroker-data/zaehlerstaende/test.xlsx'); // Excel wird neu gespeichert
                                      });
                                      

                                      Ich würde mich freuen, wenn mir hier jemand bis zum finalen funktionieren des Skriptes helfen könnte.

                                      Wird der Eintrag in der Excel dann jeden Tag überschrieben, oder kann man auch sagen, das immer eine Zelle weiter beschrieben wird? So dass es quasi eine Liste wird?

                                      viele Grüße Huhie

                                      OliverIOO Offline
                                      OliverIOO Offline
                                      OliverIO
                                      schrieb am zuletzt editiert von OliverIO
                                      #34

                                      @huhie
                                      ich habe mir den thread aus der vergangenheit mal angeschaut.
                                      exceljs ist zwar sehr gut, aber für so einen zweck für leute mit beschränkten js kenntnissen halt schon nicht so einfach.

                                      wenn es um einfache fortschreibung geht, würde ich einfach in eine csv datei schreiben
                                      csv ist sehr simple aufgebaut (eine zeile mit den feld titel, danach immer zeilen mit den einzelnen datensätzen, bei der jedes feld mit einem trenner (komme, semicolon, tab, etc getrennt ist).
                                      diese dateien kann excel sehr gut einlesen, man kann sie auch einbinden, so das das excel von diesen dateien immer aktualisiert wird.

                                      dann kann man in excel mit den daten machen was man will.

                                      gehen wir davon aus, man hat bereits eine csv datei manuell erstellt, die wie folgt aussieht

                                      datum,wert1,wert2,wert3
                                      01.01.2023,3,2,1
                                      01.02.2023,4,3,2
                                      

                                      und da möchte man dann einen datensatz anfügen, dann kann der code ausschnitt so aussehen:

                                      const fs = require('fs');
                                      let filename = "werte.csv";
                                      let fields = [
                                        "01.03.2023",
                                        5,
                                        6,
                                        7
                                      ];
                                      fs.appendFileSync(filename, fields.join(",") + "\n");
                                      
                                      

                                      wenn du dennoch mit exceljs weiter machen willst, dann sieht deine konfiguration erst einmal richtig aus. schau mal in das generelle iobroker log, ob beim hinzufügen des exceljs moduls etwas schief gegangen ist. du kannst das auch wieder herauslöschen, speichern und wieder hinzufügen und dann speichern

                                      Meine Adapter und Widgets
                                      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                      Links im Profil

                                      H 1 Antwort Letzte Antwort
                                      0
                                      • H huhie

                                        Hey ho Zusammen,

                                        ich brauche euche geballte Ladung Wissen. Da ich mich mit diesem Skript echt schwer tue und nicht weiter komme... :(

                                        ich bin auf diesen Thread gestossen und habe mich daran versucht. Mein BKW läuft nun einwandfrei
                                        und ich würde gerade die Daten des Stromverbrauchs tgl. morgens, sagen wir um 8 Uhr, in eine Excel Tabelle schreiben wollen. Also Stromverbrauch und Stromeinspeisung.

                                        Ich nutze den iobroke auf einer synology.

                                        Der Ordner zu den Daten von iobroker liegt im Ordner nas/docker/iobroker/data

                                        Der Ordner in dem die datei liegt, welche geschrieben werden soll liegt im Ordner nas/oeffentlich/finanzen

                                        Wie mounte ich das Verzeichnis bzw. wie muss das Skript dann aussehen?

                                        Das Log sagt aktuell schon:

                                        javascript.0 error at Script.runInContext (node:vm:135:12)
                                        javascript.0 error at script.js.1.stromzaehler_nach_excel:13:3
                                        javascript.0 error at script.js.1.stromzaehler_nach_excel:2:28
                                        javascript.0 error script.js.1.stromzaehler_nach_excel: TypeError: Cannot read properties of undefined (reading 'Workbook')
                                        javascript.0 error at Script.runInContext (node:vm:135:12)
                                        javascript.0 error at script.js.1.stromzaehler_nach_excel:13:3
                                        javascript.0 error at script.js.1.stromzaehler_nach_excel:1:17
                                        javascript.0 error at require (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:516:32)
                                        javascript.0 error at require (node:internal/modules/cjs/helpers:121:18)
                                        javascript.0 error at Module.require (node:internal/modules/cjs/loader:1143:19)
                                        javascript.0 error script.js.1.stromzaehler_nach_excel: Error: Cannot find module 'exceljs'

                                        Das Module exceljs steht aber unter der Instanz javascript.0

                                        2023-08-24 14_20_25-instances - iobroker und 9 weitere Seiten - Persönlich – Microsoft​ Edge.png

                                        Mein Skript sieht aktuell wie folgt aus:

                                        const ExcelJS = require('exceljs');
                                        var workbook = new ExcelJS.Workbook();
                                         
                                        workbook.xlsx.readFile('/iobroker-data/zaehlerstaende/test.xlsx').then(function() {
                                        var worksheet = workbook.getWorksheet('test');
                                         
                                        console.log (worksheet.getCell('A1').value);
                                        log (worksheet.getCell(1,3).value);
                                         
                                            worksheet.getCell('A3').value = 'Hallo Welt'; // einer Zelle einen Wert zuweisen
                                            workbook.xlsx.writeFile('/iobroker-data/zaehlerstaende/test.xlsx'); // Excel wird neu gespeichert
                                        });
                                        

                                        Ich würde mich freuen, wenn mir hier jemand bis zum finalen funktionieren des Skriptes helfen könnte.

                                        Wird der Eintrag in der Excel dann jeden Tag überschrieben, oder kann man auch sagen, das immer eine Zelle weiter beschrieben wird? So dass es quasi eine Liste wird?

                                        viele Grüße Huhie

                                        bahnuhrB Online
                                        bahnuhrB Online
                                        bahnuhr
                                        Forum Testing Most Active
                                        schrieb am zuletzt editiert von
                                        #35

                                        @huhie

                                        Da du mich einfach mal so negativ bewertest:

                                        cefda88a-3014-468c-b517-87021fc191ca-image.png

                                        erwartest du nicht wirklich eine Antwort von mir.


                                        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                        Danke.
                                        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                        ScreenToGif :https://www.screentogif.com/downloads.html

                                        F 1 Antwort Letzte Antwort
                                        0
                                        • bahnuhrB bahnuhr

                                          @huhie

                                          Da du mich einfach mal so negativ bewertest:

                                          cefda88a-3014-468c-b517-87021fc191ca-image.png

                                          erwartest du nicht wirklich eine Antwort von mir.

                                          F Offline
                                          F Offline
                                          fastfoot
                                          schrieb am zuletzt editiert von
                                          #36

                                          @bahnuhr wie kann man sich denn downvoter ansehen?

                                          iobroker läuft unter Docker auf QNAP TS-451+
                                          SkriptRecovery: https://forum.iobroker.net/post/930558

                                          bahnuhrB 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          865

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe