Office: (Office 2010) Steuerelement via VBA von extern befüllen

Helfe beim Thema Steuerelement via VBA von extern befüllen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hi zusammen, ich habe folgende Anforderung und nicht die passende Antowrt gefunden. Ich möchte aus Outlook heraus via VBA ein Kombinationsfeld in... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Flunz, 19. März 2016.

  1. Steuerelement via VBA von extern befüllen


    Hi zusammen,

    ich habe folgende Anforderung und nicht die passende Antowrt gefunden.

    Ich möchte aus Outlook heraus via VBA ein Kombinationsfeld in einer bereits geöffneten Access-DB befüllen; anschliessend einen Button aufrufen.

    Rahmen: Beim Eintreffen einer Mail suche ich nach einem Schlagwort in selbiger und möchte dieses in der DB als Filterkriterium nutzen.

    Wie greife ich auf von extern auf das Steuerelement zu?

    Pfad\Datei.Formular.Kombifeld123 so in die Richtung muss es ja gehen!?

    Danke für Eure Hilfe!
    Jonas

    :)
     
  2. Moin,

    der Weg führt ganz sicher nicht zum Ziel. Wenn Du etwas in Access machen willst, musst Du es aus Access heraus machen. Also aus Access heraus Postkasten prüfen, Mail herausfischen, zerlegen, Suchbegriff herausfiseln, Abfrage in Access starten etc pp.

    Gruß
    Ralf
     
    drambeldier, 21. März 2016
    #2
  3. Du solltest über das Projekt etwas mehr Auskunft geben.

    Also was genau soll in Access geschehen und vor allem warum?

    Du kannst die Verarbeitung zur Gänze in Access durchführen, indem Access auf das neue Eintreten einer Email reagiert, oder Outlook reagiert auf das Ereignis. Outlook kann dann Access steuern, oder es übergibt die Daten an Access und Access verarbeitet die Daten.

    Es gibt also viele Möglichkeiten.
    LG Markus
     
    markusxy, 21. März 2016
    #3
  4. Steuerelement via VBA von extern befüllen

    Code:
     
  5. Zunächst einmal "Danke" für Eure Rückmeldungen. Ich werde mal die Anwendung etwas konkreter beschreiben, evtl. kristallisiert sich dann ein Weg klarer heraus.

    Ich habe in meiner Access-DB einen Fahrplan. Diesen Fahrplan möchte ich nun "fernabrufbar" gestalten, da sich enthaltene Informationen u.U. sehr kurzfristig ändern.

    Nun bin ich unterwegs und sende dem Rechner mit meiner DB eine Email.

    Betreff: 'Schlagwort für den Regelassistenten/VBA im Outlook'
    Inhalt:
    #start:Frankfurt
    #ende:München

    Ich stehe also in Frankfurt und möchte nach München.
    Mein gedanklicher Weg:
    Die beiden Bahnhöfe "Frankfurt" und "München" sollen in meiner 'fahrplan.accdb' ins Formular 'verbindungsviewer' in die Kombinationsfelder 'kf_startbhf' und 'kf_endbhf' eingetragen werden. Anschliessend wird in gleichem Formular der Button 'btn_bericht' aufgerufen.

    Der Button aktualisiert eine Abfrage, druckt einen Bericht als PDF und versendet diesen als Email. (natürlich sinniger Weise an die Absenderadresse der Anforderungsmail.) (Abgesehen von der dynamischen Adresse gibt es diesem Teil bereits)

    Ich brauche also die (wie auch immer zu markierenden (z.B. #start*Smilie) Bahnhöfe aus der Mail in meinen Kombifeldern.

    Was ist der geschicktere Weg: Outlook schreibt nach Access, oder Access holt sich die Daten aus Outlook?

    Danke Euch,
    Jonas
     
  6. Hallo Jonas,
    aufgrund der bisherigen Infos würde ich folgende Vorgehensweise wählen:

    Ich würde alle betoffenen Mails per Regel in einen eigenen Outlook Ordner verschieben.
    Eine eigene Access Instanz reagiert auf das newItem Ereignis des Ordners.

    Das Access-Formular sollte normalerweise ja nicht erforderlich sein. Ein Form vereinfacht lediglich für einen User die Eingabe, aber wenn nur ein Code läuft ist das Formular hinderlich.
    Also einfach das PDF erstellen - wenn Daten nur gefiltert werden müssen, kann man das ja direkt im Report machen - das Mail mit PDF retournieren.

    LG Markus
     
    markusxy, 24. März 2016
    #6
  7. Hallo Jonas,

    1. diese/deine DB müsste geöffnet und auch aktionsbereit sein, natürlich auch dein PC *biggrin.gif*.
    2. Outlook Eingang verknüpfen mit Access (stellt vermutlich kein Problem dar)
    3. Aktionsformular geöffnet, der Timer des Formulars fragt die Outlook Eingänge in diesem (nachstehend) Takt ab.
    (Timer 1000 eventuell, keine Ahnung wie schnell diese Rückantwort gesendet werden muss/soll).
    4. falls ein neuer Mail-Eingang hinzukommt (müsste natürlich einen Hinweis auf deinen Auftrag haben,
    der auch ausgewertet werden muss)...
    wird ein VBA Code aktiviert und über einen weiteren VBA Code eine Mail mit diesen Daten, die du erwartest, an dich gesendet.

    Habe es nicht getestet, also nur eine Vision oder Zusammenfassung deiner Idee *wink.gif*
    PS: ich hoffe, dass ich deine Idee auch richtig verstanden habe!
     
    Kyron9000, 24. März 2016
    #7
  8. Steuerelement via VBA von extern befüllen

    Guten Morgen zusammen,

    ich bin einen guten Schritt weiter, nun hakelt es an (vermutlich) einfachster Sytax.

    Das´ im Prinzip alles:
    Code:
    Die Kombifelder werden so korrekt gefüllt.
    Über die Ermittlung wieviele Mails im Eingang liegen bekomme ich Zugriff auf die Korrekte Mail - soweit alles gut.
    Nun soll natürlich statt "mein Bahnhof 1" eine Variable dort hin, welche ich vorher aus dem Inhalt der Mail füllen möchte.
    Da hänge ich.

    Ich wollte die beiden Bahnhöfe mit einem Suchbegriff markieren; also z.B.

    #start:Frankfurt#
    #ende:München#

    Wie komme ich an den Inhalt zwischen "#start:" und "#"?
    Oder wie komme ich an eine betimmte Zeile?

    habe es so versucht:
    Code:
    so durchkämme ich allerdings die Mail von beginn an (ab 8. Stelle, für 20), was durch die variable Länge der Namen Probleme macht.

    Vielleicht hat einer eine zündende Idee.
    Lg,
    Jonas
     
  9. Mal so ganz doof gefragt: Wenn du schon unterwegs einen Internetzugang hast, um eine E-Mail zu senden, warum gehst du dann nicht gleich ins Internet, um dir den Fahrplan runterzuladen?
    Du musst dann auch zusätzlich die Fahrpläne in deiner DB aktualisieren, wenn sich etwas ändert.
     
    Toast78, 28. März 2016
    #9
  10. Es handelt sich bei meinem Fahplan nicht um den öffentlichen sondern um einen mit vielen internen Informationen ergänzten.
    Sonst könnte ich natürlich einfach in den normalen Fahrplan sehen und/oder meine Route im Vorfeld planen.
     
  11. Die Antwort hast du eh schon selbst gegeben.
    Du suchst nach dem ersten Vorkommen von # nach #Start.
    Das macht man mit der InStr-Funktion.
    Die VBA Hilfe verrät alles darüber mit Beispielen und man findet auch weitere String Funktionen.

    LG Markus
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    markusxy, 29. März 2016
    #11
  12. Hallo Jonas,

    habe dir schnell meine Idee zusammengestellt...
    1. bevor du das Formular öffnest, musst du eine Verknüpfung zur Outlook-Tabelle Posteingang erstellen
    Externe Daten/ Weitere Optionen/ Outlookordner
    2. dann das Formular öffnen
    3. du sendest dir anschließend selber eine Mail mit dem Text - Frankfurt#München
    4. wenn du die Mail bekommst wirst du es sofort im Formular bemerken.
    Weiter habe ich noch nicht gedacht, denn eine Mail anschließend zu erstellen,
    wird das Problem nicht sein.
    Wie du was suchen möchtest und wie der Plan zusammengestellt wird...
    kann das nicht wissen, ist ja deine DB *wink.gif*
    Und, wenn kein # dabei ist, wird auch nichts versendet.
    Ev. solltest dir noch einen Code für den Betreff ausdenken,
    der kann dann auch noch zur Sicherheit abgefragt werden.
    Spaßvögel gibt es ja genug!

    PS: das man nicht lange warten muss, habe ich die Zeit sehr kurz eingestellt!
    Und noch etwas, man muss nicht Start und Ende schreiben...
    das 1. Wort ist der Startbahnhof und das 2. Wort der Zielbahnhof.
     
    Kyron9000, 29. März 2016
    #12
  13. Steuerelement via VBA von extern befüllen

    Hallo Kyron9000,

    Du siehst mich symbolisch auf die Knie fallen *wink.gif* Danke!
    Hab nur bis zu "Verknüpfung zur Outlooktabelle...." gelesen.
    Damit ist ja alles klaro!
    Glaubst ich hätte diese Option gesehen, bzw. in Betracht gezogen!?

    Timer läuft im Formular sowieso alle 30 sek.

    Wie würdest Du Deinen Punkt 4 realisieren.
    Ich hätte in den Timer geschrieben, "wenn die neueste Mail neuer jetzt()-30sek ist dann mache.......

    Gibt´s bessere Ideen?

    Lg,
    Jonas
     
  14. ok, freut mich...
    ich habe mir deine Idee nun weiter überlegt... da kannst ja einiges anstellen damit (im positiven Sinn).
    Wenn du einen Code sendest macht dein Access was du in eine Tabelle vorgegeben hast...
    ist ja genial, finde die Idee sehr gut...?!
    Du kannst dir Mailadressen, TelNummern, Fahrplan eigentlich alles senden lassen was so am PC ist *Smilie natürlich nur über Code.
    Access kannst auch abdrehen mit einem Mail.
    Das "sofort senden" muss ich noch testen... funkt noch nicht so (hatte das Problem schon mal)
    da wirst ja gefragt... "es soll eine Mail gesendet werden, möchten Sie das"... habe es aber für Testzwecke, nur mit DoCmd.SendObject gestestet
    Schau ma mal *Smilie ich werde deine Idee weiter testen und ggf. erweitern.
     
    Kyron9000, 31. März 2016
    #14
  15. Hallo Jonas,

    habe die DB erweitert, jetzt sollte sie so funktionieren wie du es dir vorstellst.
    Außer deine Fahrplanzusammenstellung, da kann ich nicht helfen, ausser du stellst ein Beispiel ein.

    Zum Programm ist zu sagen, du musst:
    1. wieder deinen Posteingang verknüpfen, oder du kopierst ihn aus der alten DB und fügst ihn in die Neue ein
    2. im Modulkopf deine Mailadresse schreiben
    3. das einzige Formular starten
    4. eine eMail senden

    Mail an PC zu Hause senden:
    Fahrplan holen: Subject: SQLREF Body: Startort#Zielort#
    Personendaten abrufen: Subject: SQLPER Body: PersonenNachname# (z.B. Bauer#)
    Für einen Test kannst du sie dir in der Tabelle tblPersonen ansehen.
    DB beenden: Subject: SQLEND Body: nicht nötig
    PC abschalten: Subject: SQLREF Body: nicht nötig (noch nicht getestet)

    Einschalten des PC sollte auch möglich sein, aber auch noch nicht getestet.

    Das Zeichen # ist am Schluß wichtig, denn es wird am Ende einer Mail
    noch Betriebsgebunden etwas angefügt... etwa von einem Schutzprogramm.
    Das mit den Namen kann man auch ändern, denn bei gleichen wird nur einer geschickt...
    müsste man den Vornamen noch mitnehmen.
    Wenn es dann auch noch ein Problem geben sollte, müsste man sich in einer
    Schleife eben alle Personen mit gleichen Vor- und Nachname zusenden lassen.
    Die Subjekteingaben sind natürlich in einer Tabelle abänderbar, dann aber auch im Formular-Code.
    Kann man besser erstellen, weiß ich, habe ich aber nicht, weil es mM egal für diese Anwendung ist,
    wird ja nicht dauernd geändert.
    Alles was du nicht benötigst musst auch nicht verwenden, war nur eine Spielerei von mir.
    Habe die DB in .mdb eingestellt, falls sie jemand interessiert.

    Wenn ich jetzt nichts übersehen habe, sollte alles funktionieren *tongue.gif*

    PS: was ich noch bemerkt habe, wenn ich mir eine Mail sende aus dem
    selben Account wie das Outlook eingestellt hat, wurde das Mail nicht versendet.
    Also, ggf. anderen Mail-Account zum senden verwenden und den gleichen dann auch im Modul eintragen.
     
    Kyron9000, 1. April 2016
    #15
Thema:

Steuerelement via VBA von extern befüllen

Die Seite wird geladen...
  1. Steuerelement via VBA von extern befüllen - Similar Threads - Steuerelement via VBA

  2. Schnellbausteine, Auto Text und Auswahlfeld in Vorlage

    in Microsoft Word Hilfe
    Schnellbausteine, Auto Text und Auswahlfeld in Vorlage: Hallo in die Runde, ich stehe in der Firma vor folgender Herausforderung: Mein Bereich stellt für den Vertrieb standardisierte Angebote und sonstige Kundenschreiben bereit. Diese sollen durch...
  3. Bericht Steuerelementinhalt Kreuztabelle

    in Microsoft Access Hilfe
    Bericht Steuerelementinhalt Kreuztabelle: Hallo an alle, ich habe da mal eine Frage. Ich fülle einen Bericht über eine recht umfangreiche Kreuztabelle (Angestellte und deren Schulungen). Nun Muss ich die Angestellt auch Filtern können...
  4. Dropdownfeld in Word Formular

    in Microsoft Word Hilfe
    Dropdownfeld in Word Formular: Hallo, ich arbeite an einem Word Formular wo ich einige Dropdownfelder mit Ja/Nein einfügen möchte. Ich will, dass standardmäßig Nein ausgewählt ist und der User zwischen ja und nein wählen...
  5. MS Access Formular - mehrere Datensätze pro Steuerelement hinzufügen?

    in Microsoft Access Hilfe
    MS Access Formular - mehrere Datensätze pro Steuerelement hinzufügen?: Hallo Ihr Lieben, ich bastle gerade ein Formular. Nun such ich nach dem passenden "Steuerelement", dass ich mehrere Daten pro Feld eingeben kann, z.B. getrennt durch ein Semikolon oder ähnliches?...
  6. Excel Desktop App und Active X Steuerelemente

    in Microsoft Excel Hilfe
    Excel Desktop App und Active X Steuerelemente: Hallo, ich benutze Office 365 Single und habe in der Cloud eine Datei gespeichert, die Active-X-Steuerelemente, VBA und Makros enthält. In der Web-App von Excel 365 wird mir an der Stelle des...
  7. VBA Active X steuerelemente Auto-Eingabe wen eine Eingabe erfolgt

    in Microsoft Excel Hilfe
    VBA Active X steuerelemente Auto-Eingabe wen eine Eingabe erfolgt: hallo ich möchte gerne über Drei Aktive X Steuer Elemente das in Spalten "A" Datum ,"B"FSN, und in" C" Benutzer immer eine Auto Eingabe Erfolg wen ich beispielsweise in eine Zeil 4 eine Eingabe...
  8. ActiveX Steuerelemente funktionieren nicht richtig

    in Microsoft Excel Hilfe
    ActiveX Steuerelemente funktionieren nicht richtig: Guten Abend zusammen, ich habe folgendes Problem: Die ActiveX-Steuerelemente funktionieren auf einem Tabellenblatt nicht richtig. In einer UserForm geht alles ohne Probleme. Bei den...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden