<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Datenerfassung mit DDESERVER</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/b3573e19a4/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/b3573e19a4/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Deutsch/thread/b3573e19a4/</id><updated>2020-02-28T10:08:54.788000Z</updated><subtitle>Recent posts to Datenerfassung mit DDESERVER</subtitle><entry><title>Datenerfassung mit DDESERVER</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/b3573e19a4/?limit=25#3d56" rel="alternate"/><published>2020-02-28T10:08:54.788000Z</published><updated>2020-02-28T10:08:54.788000Z</updated><author><name>Anonymous</name><uri>https://forge.codesys.com/u/*anonymous/</uri></author><id>https://forge.codesys.com1d2a51cf8204ce755d099c1e6d5ec117b337af79</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;em&gt;Originally created by:&lt;/em&gt; Tino&lt;/p&gt;
&lt;p&gt;Das war genau das, was ich gesucht hab... Vielen Dank!&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Datenerfassung mit DDESERVER</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/b3573e19a4/?limit=25#d7ea" rel="alternate"/><published>2020-02-28T10:08:47.728000Z</published><updated>2020-02-28T10:08:47.728000Z</updated><author><name>Anonymous</name><uri>https://forge.codesys.com/u/*anonymous/</uri></author><id>https://forge.codesys.comb00684241bb6f8f253e3e1be31589b40ba01cfea</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;em&gt;Originally created by:&lt;/em&gt; Joohrte&lt;/p&gt;
&lt;p&gt;Ich hatte für Siemens etwas ähnliches gemacht&lt;/p&gt;
&lt;p&gt;hirfür habe ich zeitgesteuert einen alarm generirt&lt;/p&gt;
&lt;p&gt;Um den ersten Alarm zu setzen ist in der Arbeitsmappe Folgende &lt;/p&gt;
&lt;p&gt;Visuel Prosedure einzubinden.&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;Private Sub Workbook_Open()&lt;/p&gt;
&lt;p&gt;Dim Mldg, Stil, Titel, Hilfe, Ktxt, Antwort, Text1&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nv"&gt;Mldg&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Möchten Sie die Zeitsteuerung starten ?&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;   &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; Meldung definieren.&lt;/span&gt;

&lt;span class="nv"&gt;Stil&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;vbYesNo&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nv"&gt;vbCritical&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nv"&gt;vbDefaultButton2&lt;/span&gt;  &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; Schaltflächen&lt;/span&gt;

    &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; definieren.&lt;/span&gt;

&lt;span class="nv"&gt;Titel&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Zeitsteuerung&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;  &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; Titel definieren.&lt;/span&gt;

&lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt;Hilfe = "DEMO.HLP"  &lt;/span&gt;&lt;span class="s1"&gt;'&lt;/span&gt; &lt;span class="nv"&gt;Hilfedatei&lt;/span&gt;

    &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; definieren.&lt;/span&gt;

&lt;span class="nv"&gt;Ktxt&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt; &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; Kontext für Thema&lt;/span&gt;

    &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; definieren.&lt;/span&gt;

&lt;span class="nv"&gt;Antwort&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;MsgBox&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;Mldg&lt;/span&gt;, &lt;span class="nv"&gt;Stil&lt;/span&gt;, &lt;span class="nv"&gt;Titel&lt;/span&gt;, &lt;span class="nv"&gt;Hilfe&lt;/span&gt;, &lt;span class="nv"&gt;Ktxt&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;    &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; Meldung anzeigen.&lt;/span&gt;

&lt;span class="k"&gt;If&lt;/span&gt; &lt;span class="nv"&gt;Antwort&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;vbYes&lt;/span&gt; &lt;span class="k"&gt;Then&lt;/span&gt; &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; Benutzer hat "Ja"&lt;/span&gt;

                        &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; gewählt.&lt;/span&gt;

    &lt;span class="k"&gt;Call&lt;/span&gt; &lt;span class="nl"&gt;Alarm_15&lt;/span&gt;   &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; Operation ausführen.&lt;/span&gt;

&lt;span class="k"&gt;Else&lt;/span&gt;    &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; Benutzer hat "Nein"&lt;/span&gt;

    &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; gewählt.&lt;/span&gt;

&lt;span class="k"&gt;End&lt;/span&gt; &lt;span class="k"&gt;If&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;End Sub&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;Die Procedure Alarm_15 Startet die Procedure "Start_Lesen" nach 15 Minuten in der du deine Anwendung schreiben kannst.&lt;/p&gt;
&lt;p&gt;Sub Alarm_15()&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;Heute&lt;/span&gt;

&lt;span class="n"&gt;Dim&lt;/span&gt; &lt;span class="n"&gt;Minuten&lt;/span&gt; &lt;span class="k"&gt;As&lt;/span&gt; &lt;span class="nb"&gt;Integer&lt;/span&gt;

&lt;span class="n"&gt;Heute&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Now&lt;/span&gt; &lt;span class="s1"&gt;' aktuelle zeit lesen&lt;/span&gt;

&lt;span class="s1"&gt;Stunde = Hour(Heute)&lt;/span&gt;

&lt;span class="s1"&gt;Minuten = Minute(Heute) / 15 '&lt;/span&gt; &lt;span class="n"&gt;Runden&lt;/span&gt; &lt;span class="n"&gt;auf&lt;/span&gt; &lt;span class="mi"&gt;15&lt;/span&gt; &lt;span class="n"&gt;Minuten&lt;/span&gt; &lt;span class="n"&gt;Raster&lt;/span&gt;

&lt;span class="n"&gt;Minuten&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Minuten&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;15&lt;/span&gt;

&lt;span class="n"&gt;Neuer_Alarm&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;TimeSerial&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Stunde&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;Minuten&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;15&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="s1"&gt;' Neue Zeit für Alarm&lt;/span&gt;

&lt;span class="s1"&gt;Application.OnTime TimeValue(Neuer_Alarm), "Start_Lesen" '&lt;/span&gt;&lt;span class="n"&gt;Zeitgesteuerter&lt;/span&gt; &lt;span class="n"&gt;aufruf&lt;/span&gt; &lt;span class="n"&gt;Setzen&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;End Sub&lt;/p&gt;
&lt;hr/&gt;
&lt;p&gt;in der Procedure Start_Lesen wir zusätzlich zum anwender Programm die &lt;/p&gt;
&lt;p&gt;Procedure Alarm_15 aufgerufen um die neue Alarmzeit zu setzen.&lt;/p&gt;
&lt;p&gt;Sub Alarm_15()&lt;/p&gt;
&lt;p&gt;Call Alarm_15 ' Zeitsteuerung auf nächsten fünfzeh minuten setzen&lt;/p&gt;
&lt;p&gt;End Sub&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Datenerfassung mit DDESERVER</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/b3573e19a4/?limit=25#7a8d" rel="alternate"/><published>2020-02-28T10:08:44.245000Z</published><updated>2020-02-28T10:08:44.245000Z</updated><author><name>Anonymous</name><uri>https://forge.codesys.com/u/*anonymous/</uri></author><id>https://forge.codesys.come34f7dcbeacdb16d060e16c7d983cb6773186f53</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;em&gt;Originally created by:&lt;/em&gt; Tino&lt;/p&gt;
&lt;p&gt;Erstmal vielen Dank für die Antwort...&lt;/p&gt;
&lt;p&gt;Hab das jetzt mal selber mit nem Makro in Excel versucht (unten angehängt). Schreibe damit den aktuellen Wert jeweils in eine neue Datei in einem bestimmten Zeitabstand; wenn diese mit einer bestimmten Anzahl von Werten gefüllt ist, wird sie gespeichert und die nächste geöffnet...&lt;/p&gt;
&lt;p&gt;Das Problem dabei ist, dass dafür dieses Makro ständig laufen muss. Dadurch habe ich eine Prozessorauslastung von 100% und die DDE-Werte werden nicht mehr aktualisiert.&lt;/p&gt;
&lt;p&gt;Vielleicht hat jemand ne Idee, wie ich das ändern könnte, damit es so funktioniert, wie oben beschrieben?&lt;/p&gt;
&lt;p&gt;Sub Makro1()&lt;/p&gt;
&lt;p&gt;'&lt;/p&gt;
&lt;p&gt;' Makro1 Makro&lt;/p&gt;
&lt;p&gt;' Makro am 30.10.2005 von Tino aufgezeichnet&lt;/p&gt;
&lt;p&gt;k = 0&lt;/p&gt;
&lt;p&gt;Do While k &amp;lt; 3&lt;/p&gt;
&lt;p&gt;Workbooks.Open Filename:= _&lt;/p&gt;
&lt;p&gt;"C:\Projekt\Aufzeichnung\Wind_Vorlage.xls"&lt;/p&gt;
&lt;p&gt;k = k + 1&lt;/p&gt;
&lt;p&gt;i = 0&lt;/p&gt;
&lt;p&gt;Zaehler = 1&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;    &lt;span class="k"&gt;Do&lt;/span&gt; &lt;span class="k"&gt;While&lt;/span&gt; &lt;span class="nv"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mi"&gt;12&lt;/span&gt;



     &lt;span class="nv"&gt;Pausenl&lt;/span&gt;ä&lt;span class="nv"&gt;nge&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;    &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; Dauer festlegen.&lt;/span&gt;

     &lt;span class="nv"&gt;Start&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;Timer&lt;/span&gt;    &lt;span class="s1"&gt;'&lt;/span&gt;&lt;span class="s"&gt; Anfangszeit setzen.&lt;/span&gt;



        &lt;span class="k"&gt;Do&lt;/span&gt; &lt;span class="k"&gt;While&lt;/span&gt; &lt;span class="nv"&gt;Timer&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="nv"&gt;Start&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nv"&gt;Pausenl&lt;/span&gt;ä&lt;span class="nv"&gt;nge&lt;/span&gt;



        &lt;span class="k"&gt;Loop&lt;/span&gt;



     &lt;span class="nv"&gt;Zaehler&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;Zaehler&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;

     &lt;span class="nv"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;i&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;



     &lt;span class="nv"&gt;Windows&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Aufzeichnung.xls&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;.&lt;span class="nv"&gt;Activate&lt;/span&gt;

     &lt;span class="nv"&gt;Range&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;B1&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;.&lt;span class="nv"&gt;Copy&lt;/span&gt;



     &lt;span class="nv"&gt;Windows&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Wind_Vorlage.xls&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;.&lt;span class="nv"&gt;Activate&lt;/span&gt;

     &lt;span class="nv"&gt;Range&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;B&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="nv"&gt;Zaehler&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="s2"&gt;""&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;.&lt;span class="nv"&gt;Select&lt;/span&gt;

     &lt;span class="nv"&gt;ActiveSheet&lt;/span&gt;.&lt;span class="nv"&gt;Paste&lt;/span&gt;

     &lt;span class="nv"&gt;Application&lt;/span&gt;.&lt;span class="nv"&gt;CutCopyMode&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;False&lt;/span&gt;



     &lt;span class="nv"&gt;Range&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="s"&gt;A&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="nv"&gt;Zaehler&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="s2"&gt;""&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;.&lt;span class="nv"&gt;Select&lt;/span&gt;

     &lt;span class="nv"&gt;ActiveCell&lt;/span&gt;.&lt;span class="nv"&gt;FormulaR1C1&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;Time&lt;/span&gt;



    &lt;span class="k"&gt;Loop&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;ActiveWorkbook.SaveAs Filename:= _&lt;/p&gt;
&lt;p&gt;"C:\Projekt\Aufzeichnung\Wind_" &amp;amp; Date &amp;amp; "_" &amp;amp; k &amp;amp; ".xls", _&lt;/p&gt;
&lt;p&gt;FileFormat:=xlNormal, Password:="", WriteResPassword:="", _&lt;/p&gt;
&lt;p&gt;ReadOnlyRecommended:=False, CreateBackup:=False&lt;/p&gt;
&lt;p&gt;ActiveWindow.Close&lt;/p&gt;
&lt;p&gt;Loop&lt;/p&gt;
&lt;p&gt;End Sub&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Datenerfassung mit DDESERVER</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/b3573e19a4/?limit=25#e255" rel="alternate"/><published>2020-02-28T10:08:37.393000Z</published><updated>2020-02-28T10:08:37.393000Z</updated><author><name>Anonymous</name><uri>https://forge.codesys.com/u/*anonymous/</uri></author><id>https://forge.codesys.come8d3106828d8af7387a544ef73ddfe18c6361aeb</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;em&gt;Originally created by:&lt;/em&gt; Weinbuch&lt;/p&gt;
&lt;p&gt;Eine Access db anlegen mit einem Formular mit der DDE Verknüpfung. Über den Zeitgeber des Formulars ein Makro zyklisch anstoßen und die Daten in einer Tabelle abspeichern. In der Tabelle ein Datumsfeld mitdefinieren mit Einstellung (Standardwert: Datum()). So hast Du immer die Uhrzeit bzw. das Datum mit dabei.&lt;/p&gt;
&lt;p&gt;Oder aber die Daten von der Exceltabelle zyklisch in eine Access db exportieren....Beispiele gibt Microsoft - Hilfe her.&lt;/p&gt;
&lt;p&gt;Gruß Ralf Weinbuch&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Datenerfassung mit DDESERVER</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/b3573e19a4/?limit=25#b99a" rel="alternate"/><published>2020-02-28T10:08:34.759000Z</published><updated>2020-02-28T10:08:34.759000Z</updated><author><name>Anonymous</name><uri>https://forge.codesys.com/u/*anonymous/</uri></author><id>https://forge.codesys.com0a8e67a5748267c525b14b52fdccede58cb07add</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;em&gt;Originally created by:&lt;/em&gt; Tino&lt;/p&gt;
&lt;p&gt;Hallo!&lt;/p&gt;
&lt;p&gt;Habe Daten aus einem Projekt über DDESERVER in Excel anzeigen lassen, was auch ohne Probleme funktioniert...&lt;/p&gt;
&lt;p&gt;Mein Problem ist, dass der Wert der Variable im jeweiligen Feld in Excel immer aktualisiert wird. Bräuchte aber eine Lösung, die in bestimmten Abständen (z.B. 5 Minuten) den aktuellen Wert fortlaufend in eine Tabelle oder ein Logfile einträgt... Wäre schön, wenn jemand ein Makro für Excel oder eine andere Lösung hat.&lt;/p&gt;
&lt;p&gt;MfG Tino&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>