tomme: HTML tabelle in XLS file mit JAVASCRIPT / JAVA APPLET

Hi,
habe über ein java applet ein textfile eingelesen,  mit hilfe von javascript zerlegt und relevante daten in eine tabelle eingeordnet.
soweit sogut...
nun möchte ich diese html tabelle möglichst einfach in eine ms excel (xls) datei einbetten.
mit javascript dürfte das ja schwer gehen, da der IE dies nicht zuläßt.
somit wollte ich es mit einem applet versuchen, da so auch das einlesen geht! nur habe ich keinen ahnung wie das klappen soll!
ist es überhaut möglich?
bin über jede antwort dankbar!
lg tomme

  1. Hallo tomme!

    nun möchte ich diese html tabelle möglichst einfach in eine ms excel (xls) datei einbetten.

    Am Client?

    mit javascript dürfte das ja schwer gehen, da der IE dies nicht zuläßt.
    somit wollte ich es mit einem applet versuchen, da so auch das einlesen geht! nur habe ich keinen ahnung wie das klappen soll!

    Also scheinbar wirklich am Client! Applet läuft in der Sandbox, da sollte es der IE auch nicht zulassen.

    bin über jede antwort dankbar!

    Mein Vorschlag: Die Excel-Datei über VBSript öffnen, und dann die Tabelle dort hineinschreiben.
    http://forum.de.selfhtml.org/archiv/2001/5/t24031/#m125403
    Das Beispiel öffnet Excel und schreibt dort etwas in eine Zelle.

    Viele Grüße

    H-P Ortner

    1. Hallo,
      erstmals vielen dank für deine hilfreiche antwort!

      Mein Vorschlag: Die Excel-Datei über VBSript öffnen, und dann die Tabelle dort hineinschreiben.

      ich denke vbscript ist tatsächlich das einfachste, obwohl ich bis jetzt noch keine erfahrung damit gemacht habe ;-).

      http://forum.de.selfhtml.org/archiv/2001/5/t24031/#m125403
      Das Beispiel öffnet Excel und schreibt dort etwas in eine Zelle.

      ich wollte nun das bsp mal ausprobieren aber leider schaffe ich es nicht, dass sich eine excel mappe öffnet.

      ich habe es auch schon mit ein paar anderen beispielen probiert.

      es wird nichteinmal die msgbox geöffnet, da schon vorher ein fehler auftritt

      es kommt meistens die fehlermeldung im ie:
      ActiveX-Komponenten kann kein Objekt erstellen: 'Excel.Sheet'

      lg thomas

      1. Hallo tomme!

        http://forum.de.selfhtml.org/archiv/2001/5/t24031/#m125403
        Das Beispiel öffnet Excel und schreibt dort etwas in eine Zelle.
        ich wollte nun das bsp mal ausprobieren aber leider schaffe ich es nicht, dass sich eine excel mappe öffnet.
        es kommt meistens die fehlermeldung im ie:
        ActiveX-Komponenten kann kein Objekt erstellen: 'Excel.Sheet'

        Ist auf dem PC, auf dem du das probierst Excel installiert?
        Öffnest du die Datei lokal oder über http?
        Wie sind die Sicherheitseinstellungen im IE und wie die Makrosicherheit in Excel?

        Viele Grüße

        H-P Ortner

        1. Hallo,

          Ist auf dem PC, auf dem du das probierst Excel installiert?

          ja, hab ich installiert.

          Öffnest du die Datei lokal oder über http?

          ich öffne sie lokal

          Wie sind die Sicherheitseinstellungen im IE und wie die Makrosicherheit in Excel?

          ich hab auch schon gelesen, dass es manchmal an den sicherheitseinstellungen im ie scheitert. hab jetzt eigentlich alles auf aktivieren gestellt.

          makrosicherheit habe ich jetzt auch auf niedrig gestellt und "Allen installierten Add-Ins und Vorlagen vertrauen" und "Zugriff auf VB Projekt vertraun" angeklickt.

          hast du sonst noch eine idee warum es nicht klappen könnte?

          lg thomas

          1. Hallo nochmal!
            also ich habs jetzt doch geschafft :-)
            hab auf die einstellungen im lokalen intranet vergessen :-)

            dein bespiel hab ich trotzdem nicht ganz hinbekommen. habs jetzt so gemacht:

            <html>
            <head>
            <title>Test mit VB-script</title>
            <SCRIPT LANGUAGE="VBScript">
            <!--
              Function teste()

            Set FSO = CreateObject("Scripting.FileSystemObject")
                Set objXL = CreateObject("Excel.Application")
                objXL.Visible = True
                objXL.Workbooks.Add
                objXL.ActiveSheet.Cells(1,1).Value = window.document.form1.Text.value
                msgbox("Text übertragen")
              End Function
            -->
            </SCRIPT>
            </head>
            <body>
            <form name="form1">
            <input type="Text" name="Text" value="Text der in Excel übertragen werden soll" size=40 maxlength=40>
            <input type="button" value="Test" onClick='teste()'>
            </form>
            </body>
            </html>

            aber trotzdem nochmals vielen dank für deine hilfe!!! hast mir echt weitergeholfen! :-)
            lg thomas

            1. Hallo

              Hallo nochmal!
              also ich habs jetzt doch geschafft :-)
              hab auf die einstellungen im lokalen intranet vergessen :-)
              habs jetzt so gemacht:

              Freut mich dass es klappt - hier noch eine kleine Anregung:

                
              <html>  
              <head>  
              <title>Test mit VB-Script</title>  
              <SCRIPT LANGUAGE="VBScript">  
              <!--  
                Function teste()  
                  Set objXL = CreateObject("Excel.Application")  
                  objXL.Visible = True  
                  objXL.Workbooks.Add  
                  objXL.WindowState = 2      'Minimiert  
                  objXL.WindowState = 3      'Maximiert - Kombination bringt Excel nach vorne  
                  for i= 1 to 50  
                    objXL.ActiveSheet.Cells(i,1).Value = window.document.form1.Text.value  
                  next  
                  'msgbox("Text übertragen") 'Auskommentiert damit Excel sichtbar bleibt  
                End Function  
              -->  
              </SCRIPT>  
              </head>  
              <body>  
              <form name="form1">  
              <input type="Text" name="Text" value="Text der in Excel übertragen werden soll" size=40 maxlength=40>  
              <input type="button" value="Test" onClick='teste()'>  
              </form>  
              </body>  
              </html>
              

              Dein FSO hast du auch schon eingebunden, damit steht deiner Lösung jetzt nichts mehr im Wege.

              Viele Grüße

              H-P Ortner

              1. Hallo noch mal,
                das mit WindowState ist echt praktisch. :-)

                weißt du vl wie man den inhalt einer ganzen HTML tabelle auslesen kann?

                ich habe allen zellen eine ID gegeben. nun wollte ich mit 2 schleifen und mit window.document.getElementById(i+"-"+j).innerHTML jede einzelne zelle der HTML tabelle in die excel mappe kopieren.

                das problem ist jetzt, dass in der HTML tabelle nicht nur das relevante „zeichen“ sonder auch ein HTML befehl drinnen steht.
                wie zb. <P onmouseover="farbeEin(3,3)"...>S</p>

                ich könnte natürlich mit substrings arbeiten und zb das "S" herausschneiden

                ist halt ein bisschen mühsam...

                gibt es eine möglichkeit nur das was ich in der HTML tabelle sehe (unterste ebene) zu kopieren?

                lg thomas

                1. Hallo tomme!

                  das problem ist jetzt, dass in der HTML tabelle nicht nur das relevante „zeichen“ sonder auch ein HTML befehl drinnen steht.
                  wie zb. <P onmouseover="farbeEin(3,3)"...>S</p>

                  Kommen die Tags aus der Textdatei oder hast du die selbst eingefügt?
                  Wenn du sie selbst eingefügt hast, würde ich zusätzlich zu der angezeigten Tabelle mit den Effekten ein Array ohne die Effekte erstellen.

                  gibt es eine möglichkeit nur das was ich in der HTML tabelle sehe (unterste ebene) zu kopieren?

                  Mit Hilfe von „Regulären Ausdrücken“ könnte man die Zeichen <> und alles was dazwischen steht herausfiltern und nur den Rest behalten.
                  http://de.selfhtml.org/javascript/objekte/regexp.htm

                  Viele Grüße

                  H-P Ortner