Office: (Office 2013) VBA. Button Entwurfsansicht/Formularansicht abfragen ob gedrückt wurde

Helfe beim Thema VBA. Button Entwurfsansicht/Formularansicht abfragen ob gedrückt wurde in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Erst einmal ein verzweifeltes Hallo an Alle *frown.gif* Hintergrund: Vor 4 Wochen wollt ich mal schnell *grins mit Access eine Datenbank erstellen,... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Kant_Holz, 11. Juni 2018.

  1. VBA. Button Entwurfsansicht/Formularansicht abfragen ob gedrückt wurde


    Erst einmal ein verzweifeltes Hallo an Alle *frown.gif*


    Hintergrund:

    Vor 4 Wochen wollt ich mal schnell *grins mit Access eine Datenbank erstellen, damit ich mal meine ganzen Textfiles, welche so auf 4 Rechner verteilt sind, loswerde.

    Dachte mir ja so schwer kann’s ja nicht werden, schließlich hatte ich vor 3 Jahren eine Ausbildung zum Fachinformatiker SI. Da haben wir ja auch mit Access DB erstellt.

    Hm was man nicht so alles verlernen kann in drei Jahren *grins

    Ok also erstmal eine Woche gebraucht für die DB um dann an die Formulare zu geraten. Dort irgendwann festgestellt, das Access irgendwie, na wie soll Ichs ausdrücken *smashing (halt sch... ist)

    Das geht schon los das in einem Formular mit einem Unterformular für die Mastertabelle einen DS anlegen MUSS damit der Autowert in der Untertabelle verknüpft wird, auch wenn man eventuell nur Daten in der Untertabelle machen möchte. Aber egal..

    Dann mit VBA beschäftigt. Also VB in der Schule war irgendwie leicht aber VBA und Access zusammen das ist ja Feuer und Wasser *upps

    Sobald man was zum Laufen gebracht hat, schafft es Access (Microsoft) das alles wieder zu Nichte zu machen, weil dann auf einmal Sachen die bis eben noch gingen nun auf einmal nicht mehr gehen.

    Ich hatte das Gefühl, das egal was ich mir hab einfallen lassen, das einer von MS dran gedacht hatte, dass das jemanden hätte einfallen können und eine Sperre eingebaut hat.

    Also hab ich mir dann für jedes häufiger verwendete Ereignis eine MsgBox erstellt, damit ich sehe was wie und wann ausgeführt wird.

    So weit so gut. Das Problem beginnt, wenn man in die Entwurfsansicht wechselt. Jedes Mal wird dann der komplette Code ausgeführt und damit natürlich auch die vielen MsgBoxen. Aber nicht nur das wird zum Problem, sondern auch das ich einen bestimmten Ablauf beim Ausfüllen des Formulars vorgebe. Jetzt ist man beim Ausprobieren dann in einem Feld, in dem man sonst normal nicht wäre und dann fällt einem was ein und geht in die Entwurfsansicht. Dann hat man den Salat, weil der Ablauf in VBA dann nicht mehr stimmt und es hagelt dann Fehlermeldungen. So und wenn man dann zurück in die Formularansicht geht das Spiel von vorne los…

    Das nervt bereits nach einem Tag ausprobieren so dermaßen...

    Außerdem nutze ich die Entwurfsansicht auch dazu, dass ich das Steuerelement auswählen kann und dann im Eigenschaftenfenster auf das entsprechende Ereignis doppelt klicke und somit sofort im VAB Editor in der Richtigen Sub bin. Sonst muss ich immer Seitenweise Scrollen und such mir nen Ast bis ich die richtige Sub habe.

    Also hab ich mir mit einer Notlösung beholfen. Habe einfach einen Button Entwurfsansicht im Formular platziert. Wenn ich diesen drücke dann wird mit DoCommand die Entwurfsansicht gestartet und eine Variable Global auf 2 gesetzt. Somit kann ich sagen wenn Variable=2 dann führe Code nicht aus.
    Problem ist halt nur, dass man mit diesem Button halt nicht mehr aus der Entwurfsansicht rauskommt *grins
    Also muss ich jedes Mal dann Rechtsklick oben links auf das Formular machen und Formularansicht drücken.

    Also dachte ich mir, dass ich doch irgendwie abfragen können müsste, dass dieser Button gedrückt wird, Access muss ja schließlich auch wissen, dass dieser Button gedrückt wurde. *eek.gif*

    Nun bin ich seit 6 Tagen am googlen, und bin nicht ein Stück weiter, außer ein paar Infos und 200 Seiten in den Favoriten und nochmals 300 weiteren gelesenen Seiten.

    Alles was ich finden konnte beschäftigt sich damit eigene Kontextmenüs oder Ribbons zu erstellen.

    Ich will aber die vorhandenen abfragen.

    Hab mich dann sogar mit XML Ribbon auseinander gesetzt. (Also mit USysRibbon Tabelle und XML usw.) Die "Normalen" Tabs und Commands funzen ja sogar, aber nur eben diese beiden "Entwurfsansicht" und "Formularansicht" eben nicht.
    Hab dann die idMSO dazu gesucht und gefunden. Aber funktioniert auch nicht
    Weil ich das Gefühl habe das diese anders angesprochen werden im XML Code oder diese anders heißen, als das was ich ermitteln konnte. Oder weil es ToggleButton (angeblich) sind oder weil ich diese über Menüs ansprechen muss oder weiß der Geier. *mad.gif*

    XML Entwurfsansicht

    idMso="ViewsDesignView"

    XML Formularansicht

    idMso="ViewsFormView"



    Ok dann hab ich versucht mit VBA eine Lösung zu finden mit CommdBarControl und alles Dazugehörige. Aber auch hier wieder nur Sachen die mit selbst erstellten Sachen zu tun haben.

    Es muss doch möglich sein anhand der ID des Buttons zu ermitteln ob dieser gedrückt wurde ??????

    Entwurfsansicht hat die 2952 als ID
    Formularansicht hat die 502 als ID

    Also wenn CommandButton mit ID 2952 gedrückt setze Variable=2
    und wenn CommandButton mit ID 502 gedrückt wurde dann Variable=1

    so in der Art.

    Gibt’s denn sowas wirklich nicht ???

    :)
     
    Kant_Holz, 11. Juni 2018
    #1
  2. Hallo,
    Das ist doch normal bei einer 1:n-Beziehung.
    … ist bei mir noch nie Code ausgeführt worden, nur beim Umschalten in
    Formularansicht. Und dann wird auch nur der Code in den Ereignissen, die
    beim Öffnen angestossen werden (Reihenfolge siehe OH), ausgeführt.
    Im VBE kannst du die Subs und Functions auch über die beiden Kombis
    über dem Editorfenster; - links die Objekte, rechts die Ereignisse.
    gruss ekkehard
     
    Beaker s.a., 12. Juni 2018
    #2
  3. Hi Kant_Holz,

    zu dem Punkt:
    Wenn ich denn so richtig verstehe was Du an der Stelle willst dann gibt es eine sehr einfache Methode zum Ereignis eins Steuerelementes zu gelangen. Wenn Du die Eigenschaft des Steuerelemetes anzeigst gibt es dort beim entsprechenden Event z.B. On_Click in der gleichen Zeile drei Punkte nebeneinander. Wenn Du darauf klickst dann öffent sich der VBA Editor und Du bist automatisch beim Ereignis. Ebenso kannst Du ein Eriegnis damit leicht und schnell erstellen *Smilie

    Ansonsten teile ich in keiner Weise Deine Meinung zu Access. Es ist wie immer: Wenn man weiß was man tut und wie, dann ist jedes Werkezug gut. z.B. Weiß ich nicht wie man einen Hammer richtig hält, (ziemlich am Ende des Stieles) werde ich mir halt auf die Finger schlagen. Da kann der Hammer nichts dazu) *Smilie

    Viele Grüße
    trekking
     
    trekking1, 12. Juni 2018
    #3
  4. VBA. Button Entwurfsansicht/Formularansicht abfragen ob gedrückt wurde

    Das Wechseln in den Entwurf schließt das Formular und öffnet es erneut. Betroffener Code für das Schließen wird natürlich ausgeführt.

    Im Entwurfsmodus selbst wird kein Code ausgeführt. Der ist ja zum Entwickeln gedacht.

    Du kannst aber auch einfach direkt in die Entwicklungsumgebung wechseln, ohne das Formular in den Entwurfsmodus zu wechseln.
    Ich mach das zumindest nie, da die Arbeit direkt in der VBE - vorausgesetzt man verwendet sinnvolle Namen für die Steuerelemente sehr einfach ist.

    Edit:
    Du kannst in der VBE das Steuerelement in der oberen linken Kombobox direkt auswählen und dann das gewünschte Event dazu - falls es mehrere gibt.
    Dann landest du direkt im Code.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    markusxy, 12. Juni 2018
    #4
  5. Hallo,
    nein, nicht egal, sondern absolut richtig.
    Das würde jede Datenbank so machen unabhängig von Access. Damit wird wirksam Datensalat verhindert.

    Deine Beschreibung ist verwirrend und in großen Teilen zeugt sie von Unwissenheit über Access. Wenn man sich mit Access beschäftigt, sollte man auch die Grundlagen dazu kennen.
     
    gpswanderer, 12. Juni 2018
    #5
  6. Code wird immer ausgeführt wenn man in die Entwurfsansicht wechselt, weil dabei das Formular geschlossen wird. Hat man Code im Ereignis "Bei Schließen" oder "Bei Entladen" dann wird dieser zwangsläufig ausgeführt.

    Ebenso wenn man wieder in die Formularansicht wechselt, da dabei das Formular wieder geöffnet wird.


    Siehe auch Antwort von markusxy



    @ Beaker und @ markusxy


    Das ist mir durchaus bekannt mit dem VBA Editor. Es ist halt schöner wenn man in der Entwurfsansicht ein Steuerelement anklickt und dann rechts im Eigenschaftenfenster die Übersicht über die Ereignisse hat und dort einfach auf das entsprechende Event doppelklicken kann und man ist sofort in der richtigen Sub. Außerdem kann ich dann in der Entwurfsansicht etwas verändern und dabei gleich danach in VBA dieses veränderte Steuerelement bearbeiten.


    Dabei beschreibst du mit:

    genau das was ich in meinem Beitrag beschrieben habe und auch mache. Wer im Glashaus sitzt....

    Zitat von mir:

    Und @ Alle

    Das mit der 1:n Beziehung ist mir durchaus bewusst. Was mich halt stört ist:

    Wenn ich schon eine Beziehung herstelle zwischen Datensätzen, warum kann dann wenn ich in einer Verknüpften Tabelle Einträge mache nicht automatisch eine Auto ID in der Mastertabelle erstellt werden, ohne dass ich Daten dazu eingeben muss.

    Mal angenommen ich habe nur Mastertabelle "Adressen" und 1:N Untertabelle "Namen" (Unter 1 Adresse können mehrere Namen auftauchen)

    Jetzt drücke ich jemanden eine Liste mit Namen in die Hand. Dieser hat aus Datenschutzrechtlichen Gründen keinen Zugriff auf die dazugehörigen Adressen. Die Datenbank enthält auch noch keine einzige Adresse.

    Der will jetzt die Namen einklopfen. Dies geht ja aber nicht, da beim Speichern des Datensatzes es Access (bzw. die Datenbank Logik generell) verbietet, da es noch keine ID in der Mastertabelle gibt. (Und diese wird auch erst angelegt, wenn etwas in dem zugehörigen Steuerelement eingetragen wird und sei es auch nur 1 Buchstabe oder Zeichen oder Zahl)

    Bei dieser Problematik muss ich also erst die Adressen anlegen um dann die Namen dazu eingeben zu können.

    Von der Logik der Datenbank abgesehen sagt mir die Logik aber, ich lege normalerweise erst Namen oder Personen an, um dann die Adressen dazu zu recherchieren und diese dann später nachzutragen.


    Jetzt könnte man ja auch in einem Formular mit Unterformular per VBA Code etwas in das Steuerelement für die Mastertabelle eintragen. Z.B. "Muss noch ergänzt werden" (Welches der die Namen eingibt nicht sieht in seinem Formular). Dann lässt sich der Datensatz mit Namen abspeichern.

    Da dies aber per VBA geschieht, lösen aber manche Events nicht aus, was wiederum zu Frickelei im Formular bzw. VBA führt.

    Und dann zieht ein Ding das Andere nach wie ein Rattenschwanz.

    Z.B. wenn das Formular geöffnet wird und der die Namen eingibt vorm Bildschirm hockt, und noch nix eingegeben hat, aber meint ach ne muss noch was anderes machen und schließt das Ding dann wieder. Dann muss man per VBA dann das, was man eben per VBA eingetragen hat, aus der Mastertabelle wieder löschen. Da dies sonst wieder einen Rattenschwanz an VBA Code nach sich zieht. (Fehlermeldung da keine ID in der Untertabelle zur ID in der Mastertabelle existiert.)

    Und das sind nur einige "kleinere" Probleme die so eine Konstellation nach sich zieht.

    Man könnte ja auch wenn man schon einen Formular Assitenten anbietet, das so gestalten, das man eben zuerst die Einträge für die Namen machen kann und dann erst einen Eintrag in der zugehörigen Mastertabelle gemacht werden muss. Dann könnte man beim Abfragen des Speicherns per VBA einen Eintrag in der Mastertabelle veranlassen. Somit müsste man nicht zuerst einen Eintrag in der Mastertabelle machen um diesen dann eventuell wieder löschen zu müssen.

    Access gestaltet sich dahingehend als schwierig. Je Einfacher ein Formular gestaltet wird, (auf den Hinblick, dass je mehr Buttons desto mehr kann der User falsch machen) desto schwieriger wird die Formulargeschichte bzw der VBA Code.

    Ich bin der Meinung Formulare gehören aufgeteilt und nicht so, dass in einem Formular dann 10 Steuerlemente da rumgeistern. Am besten dann noch:
    Hier was zum Anklicken und da was zum auswählen.

    Normal sollte ein Formular 2 bis 3 Felder haben zum Ausfüllen und eventuell 1 bis 2 Buttons. Am besten wäre es nur mit Tab und Enter sich durchs Formular zu "hangeln" und am Ende noch nichtmal ein Buton zum bestätigen sondern einfach nur ne MsgBox die aufgeht um zu Bestätigen oder Abzubrechen.

    Wenn ich seh, was da draußen für Leute sitzen die Datenbanken befüllen, bzw. mit Computern arbeiten, dann frag ich mich sowieso, warum in Deutschland nicht schon längst alles den Bach runtergegangen ist.


    Aber:

    Ich möchte euch nicht ans Schienbein treten und nehmt es nicht persönlich. Ich möchte eine Antwort auf meine ursprüngliche Frage.
    Ich will hier keine Grundsatzdiskussion darüber wie oder was in Access, sondern ich möchte mein Problem angehen und nicht "umgehen"
    Ebenso möchte ich auch keine Ratschläge wie ich die Entwurfsansicht umgehe, sondern wie ich diese normal nutzen kann.
    Ich habe mir weiß Gott genug durchgelesen. Und durch das viele durchlesen ist das Hirn mittlerweile so voll, das ich völlig den Überblick verloren habe wegen zu viel VBA Code der mir im Kopf rumgeistert.


    Also nochmal:

    Gibt es in VBA irgendeine Möglichkeit die beiden Buttons

    Entwurfsansicht mit der ID=2592

    und

    Formularansicht mit der ID=502

    auch nur irgendwie abzufragen mit eventuell CommandBarControl oder irgendwas anderem, ob diese gedrückt wurden. Und zwar egal wo diese gedrückt werden. (Da ja, je nachdem wo man sich befindet, die beiden Buttons in verschiedenen Kontextmenüs auftauchen)

    Auch will ich nicht eigene Kontextmenüs erstellen, sondern die vorhandenen Sachen so wie sie sind in Access verwenden.

    Also wenn CommandButton mit ID 2952 gedrückt setze Variable=2
    und wenn CommandButton mit ID 502 gedrückt wurde dann Variable=1

    so in der Art.


    Wenn jemand XML Code hat, den ich in die USysRibbons Tabelle einfügen kann (und zwar ohne das ich mir wieder eigene Ribbons erstellen muss, oder dabei "startFromScratch="true"" setzen muss. Weil wie gesagt ich möchte Access so verwenden wie es ist.) dann eben auch so.




    Gibt es jetzt hier auch Leute die sich mit VBA auskennen und eventuell einen Lösungsansatzt haben ?
     
    Kant_Holz, 13. Juni 2018
    #6
  7. dass du noch viel lernen musst und
    Deine Lyrik und deine Jammerei zu umfangreich ist.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    markusxy, 13. Juni 2018
    #7
  8. VBA. Button Entwurfsansicht/Formularansicht abfragen ob gedrückt wurde

    Hallo,
    Und wer ordnet die Namen dann den Adressen zu?
    IMO ist deine Beziehung Adressen 1 : n Namen verkehrt herum. Ich würde
    das in dem Fall, das n Namen zu einer Adresse gehören mit einer
    Zwischentabelle lösen (n:m). Da kannst du entweder die Namen oder die
    Adressen ins HFo nehmen und ins UFo die Zwischentabelle. Per Kombi
    kann da dann die Zuordnung vorgenommen werden.
    Somit sieht der eine nur die Namen, und der andere kann die Zuordnung
    erledigen.
    gruss ekkehard


    P.S.: Code, den man zeitweise nicht braucht/möchte kann man
    auskommentieren, - ist ja nach Auswahl auch nur ein Klick im VBE.
     
    Beaker s.a., 13. Juni 2018
    #8
  9. Genau das ist ja das Grundsatzproblem. Ich brauch immer jemand der irgendwas zuordnen muss.

    Mir geht es darum, dass man am Anfang ja noch nicht alle Daten zusammen hat. Die Daten kommen je erst nach und nach. Somit kann ich eigentlich erst Anfangen Daten einzutragen wenn ich alle Daten beisammen habe die miteinander verknüpft sind.

    Beispiel:

    Verknüpfung 1:n. Gebe Daten (Namen) in Formular ein und erstelle einen zugehörigen Autowert in der Mastertabelle und lasse Datensatz leer.

    Der nächste (wenn die Adressen recherchiert worden sind) bekommt dann ein Formular, indem vorn die Namen stehen und dahinter das Feld für Straße und Hausnummer. Eintragen, fertig und nächster Datensatz usw.)

    Wäre das so, dann müsste auch niemand was zuordnen, sondern nur stupide Daten einklopfen, die er vor sich liegen hat.

    Wenn die Datenbank dann mal produktiv wird, dann gibt es dann natürlich andere Formulare (Wenn z.B. die Callcenter Mitarbeiterin jemand am Telefon hat dann bekommt die natürlich eine Maske wo dann Namen und Adressen einzutragen sind.)

    Das diese Konstellation besser mit einer m:n Beziehung gelöst werden sollte, ist mir auch bewusst. Dieses Beispiel war ja nur zum veranschaulichen, damit man sieht was ich meine.



    Anscheinend wird das hier echt eine Grundsatzdiskusion.

    Ok dann fang ich mal.

    Früher war das mit Google mal so, dass man genau wissen musste was man da eingibt um die richtigen Treffer zu bekommen. Dafür hatte ich die Information die ich suchte, auch gleich bei den ersten 2 bis 5 Einträgen.

    Das lag auch daran, dass man in Foren eine Frage gestellt hat und dann kamen die Antworten dazu. Es kam nicht wie hier zu einer Grundsatzdiskussion.

    Was wir hier gerade machen, ist:

    Jemand (ich) habe ein Problem und möchte eine Problemlösung. Die Antworten die dazu kommen versuchen aber das Problem zu umgehen und nicht zu lösen.

    Ich lese sehr viel in Foren aber schreiben tu ich selten.

    Was mir dabei auffällt:


    In vielen Foren stellt jemand eine Frage. Dann braucht´s erst einmal eine ganze Seite, bis erstmal festgestellt wird, was denn eigentlich das Problem ist. Liegt auch daran, dass die meisten halt wenig Infos liefern, so dass geholfen werden kann.

    Nachdem festgestellt worden ist was denn das eigentliche Problem ist, werden (wie hier), dem Threadersteller zig Sachen gesagt die mit dem Problem nichts zu tun haben. Es wird versucht das Problem zu umgehen, aber nicht versucht das Problem zu lösen.

    Wenn man dann mal bei Seite 2 des Threads angelangt ist, ist doch mal jemand dabei, der auf das Problem eingeht. Jetzt wird der "Feinschliff" gemacht. Bis dann auf Seite 3 die Lösung auftaucht. Irgendwann ist man dann bei Seite 4, weil dann noch andere ihren Senf dazugeben müssen, der wiederum nix mit dem Problem zu tun hat.

    Erschwerend kommt dann noch die Suchroutine von Google dazu. Die egal was für einen Mist man eingibt so ziemlich alles liefert, nur sind das dann durch oben beschrieben Problematik zu viele Infos.
    Wenn man jetzt als "Nichtteilnehmer" des Forums eventuell das gleiche Problem hatte, ist man Stundenlang am googlen um dann mal irgendwann zwischendrin die Lösung zu finden.


    Also dacht ich mir:

    Dann gibt es halt vorab genug Infos damit ich nicht tagelang Frage und Antwort spielen muss.

    Aber egal wie man es heutzutage macht, macht man es eh verkehrt.


    Und mit Jammerei hat das nix zu tun. Das was ich schrieb war Verzweiflung aufgrund zu vieler Infos in den letzten Tagen. In 4 Wochen sich eine Datenbank ausdenken. (dabei mal vor 3 Jahren gemachtes wieder auf neusten Stand zu bringen.) Eigenheiten von Access versuchen zu verstehen. Dann VBA lernen damit man die Sachen einigermaßen so hinbekommt wie man es haben möchte und dann noch XML und Ribbons in Verbindung mit Access sich anzueignen. Dies alles ohne irgendwelche Hilfe oder Foren in denen ich nachgefragt hätte. Ich beschäftige mich sonst mit Switchen, Routern, Betriebssystem und Sonstigen was mit SI zu tun hat. Ich bin kein Programmierer.

    Dann aus Verzweiflung weil nix mehr geht, meldet man sich halt doch in einem Forum an, um dann hier, hingestellt zu werden, als wäre man doof und man sich sagen lassen muss, dass man doch noch viel lernen hätte. *boah

    Willst wissen wie momentan meine Stimmung ist ?

    *boah *mad.gif* *stupid *nene *rolleyes.gif*

    Also ich würde vorschlagen, bevor ich noch verbal entgleise. Halt dich einfach raus. Es sei denn du hast VBA Code der mein Problem löst.


    Danke, wusste ich auch bereits.

    Dies stellt auch wiedermal nur eine "Umschiffung" des Problems dar und keine Lösung.

    Wenn man mal alles lesen würde, hätte man feststellen können, dass ich für sehr viele Ereignisse "MsgBoxen" eingetragen habe. Ich bin erst dabei Access´s Events mir ins Hirn zu "zimmern". Das ist nur solange bis ich dann mal auswendig weiß welches Event wann "feuert". Somit kann ich genau sehen, wann welcher Code ausgeführt wird. Da wäre ich ja ständig nur am "Auskommentieren und wieder rückgängig machen" und könnte nix mehr anderes tun.


    Und an alle anderen. Damit dies hier nicht ganz und gar ausufert, werde ich Antworten die mit dem Problem, ob man die 2 Buttons den nun irgendwie ansprechen/abfragen kann, nichts zu tun haben, gekonnt ignorieren.
     
    Kant_Holz, 13. Juni 2018
    #9
  10. Wenn das Fremdschlüsselfeld optional ist, setze entweder LinkChildFields nebst LinkMasterFields des Unterformulars auf eine leere Zeichenkette oder verwende das Formular oder auch ein anderes Formular als Hauptformular zur anfänglichen Dateneingabe.
     
  11. Ich weiß nicht wo das Problem liegen sollte.
    Referenz erstellen. Event abfangen.
    Insgesamt zwei Zeilen Code.

    Jetzt lass ich dich mal selbst arbeiten.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    markusxy, 13. Juni 2018
    #11
  12. Hallo,
    Dazu gibt es eine relativ einfache Lösung. Lege mit der ID "0" einen Dummydatensatz in der Adressentabelle an. Als Adresseneintrag z.B. "Nicht bekannt". Den Standardwert für die AdressenID in der Namenstabelle stellet Du dann auf 0.
    Dann kannst Du Namen einklopfen wie Du lustig bist. Ist die Adresse bekannt, wird, wird die richtige Adresse gewählt. Ist er nicht bekannt > nächster Name.
    Das hat auch den Vorteil, dass man relativ leicht filtern kann, wer noch keine Adresse hat. Damit umgeht man ganz einfach das Problem mit noch nicht vorhandenen Daten in 1-Tabellen. Das gilt auch für andere Daten als die Adressen und ist ein durchaus übliches Verfahren. Und VBA braucht es da auch nicht.

    Unabhängig davon bin ich der Meinung, dass das eine n:m Beziehung ist.
    n-Namen zu m-Adressen. Siehe auch Hinweis von ekkehard in #8.

    PS:
    Wenn Du hier so eine unqualifizierte Meinung zu Access loslässt, musst Du Dich nicht über eine Grundsatzdiskussion wundern.
    Und es wäre auch ein schlechtes Forum, wenn es nicht zu einer solchen Diskussion käme. Dadurch sind oftmals schon viel bessere Lösungen zu Stande gekommen, als der TE erwartet hat.
     
    gpswanderer, 13. Juni 2018
    #12
  13. VBA. Button Entwurfsansicht/Formularansicht abfragen ob gedrückt wurde

    Ich bin raus,

    wenn ich viel lesen will dann kauf ich mir den Spiegel. *mrcool

    Viel Erfolg und viel Spaß mit ihm Jungs.

    Viele Grüße
    trekking
     
    trekking1, 13. Juni 2018
    #13
  14. Hallo,
    Genauso, wie du jemanden brauchst der die Daten erfasst *entsetzt
    Wie sollte denn eine automatische Zuordnung funktionieren, ausser
    über die Schlüsselfelder.

    Ansonsten finde ich, dass Lösungsansätze aufgezeigt wurden. Wenn du
    dich damit aber nicht beschäftigen willst, und sogar deren Sinnhaftigkeit
    anzweifelst, steig ich hier aus.

    gruss ekkehard
     
    Beaker s.a., 13. Juni 2018
    #14
  15. Das ist genau das was ich in meinem letzten Beitrag geschrieben habe.

    Entweder man gibt den Leuten zu wenig Infos, dann artet es in Frage und Antwort Spiele aus. Oder man gibt Ihnen mehr Infos dann sehen sie die Problemstellung nicht mehr.


    Wenn ihr Alle mal lesen würdet, dann würden die meisten sehen, dass ich kein Problem habe wie was auszufüllen ist. Das WAR UND IST NUR EIN BEISPIEL gewesen und hat nichts mit meiner wirklichen Datenbank zu tun.

    Ich kann nach 4 Wochen nicht sämtliche Eigenheiten von Access. Datenbankentwicklung, VAB und XML ALLES kennen.

    Ich habe einfach nur rumexperimentiert und bin da halt auf mehrere kleinere Probleme gestoßen, die anfänglich für mich halt völlig unerklärlich waren.

    Diese Probleme sind alle behoben. Auch das mit der m:n Beziehung hat nix mit dem wirklichen Problem zu tun. DAS WAR NUR EIN AUSGEDACHTES BEISPIEL MANNNNN


    Ich habe nur das Problem, das sobald ich in die Entwurfsansicht wechsle und wieder zurück, ich einfach eine Zustandsvariable brauche anhand derer ich im kompletten Code sagen kann:

    SOLANGE ZUSTANDSVARIABLE=2 (oder sonst was) für die Entwurfsansicht DANN FÜHRE KEINEN CODE AUS.

    Also deshalb habe ich mich auf die Suche nach einem Codeschnipsel gemacht anhand dessen ich feststellen kann ob:

    ENTWURFSANSICHT gedrückt wurde, welche die ID=2952 hat und ich dachte halt das es eine Methode in VBA gibt mit was weiß ich "OnAction" oder wie auch immer, wo ich dann anhand von der ID das feststellen kann ob dieser Button (bzw. dann auch noch für Formularansicht mit ID=502) gedrückt wurde und dann mir dementsprechend eine Variable anlegen kann.

    NICHTS weiter.

    Das Problem war dann aber, dass jede Seite die ich gefunden hatte, die nur im entferntesten was damit zu tun hatte, immer nur davon handelte das Eigene Ribbons oder eigene Kontextmenüs erstellt werden.

    Ich will aber nix neues erstellen sondern das vorhandene einfach abfragen.

    Und wenn ich so weit wäre, dass ich nach 4 Wochen VBA Code erzeugen könnte, nur weil mir einer nen Brocken hinwirft, dann müsste ich nicht im Forum fragen. Außerdem würd ich dann als Programmierer arbeiten.


    LEUTE 4 WOCHEN !!!!! Oder konntet Ihr alle nach 4 Wochen perfekt VBA und konntet gleich ne Datenbank mit 20 Tabellen erstellen und euch dann noch perfekt in XML Ribbon und Access auskennen.

    hmpf...
     
    Kant_Holz, 13. Juni 2018
    #15
Thema:

VBA. Button Entwurfsansicht/Formularansicht abfragen ob gedrückt wurde

Die Seite wird geladen...
  1. VBA. Button Entwurfsansicht/Formularansicht abfragen ob gedrückt wurde - Similar Threads - VBA Button Entwurfsansicht

  2. Excel VBA mit Toggle Button Zeile einfärben

    in Microsoft Excel Hilfe
    Excel VBA mit Toggle Button Zeile einfärben: Hallo, ich habe ein Makro für einen activeX Toggle Button. Wenn dieser nicht betätigt ist, sollen bestimme Zellen in einer Reihe ihre Hintergrundfarbe ( hexal #FFFFFF ; RGB 255 255 255)...
  3. STRG+F via Button mit VBA

    in Microsoft Excel Hilfe
    STRG+F via Button mit VBA: Moin, ich habe ein Problem, welches ich nicht im Stande bin alleine zu lösen. Ich habe eine Excel-Tabelle, wo Stellplätze von 3 Kühlhäusern aufgeführt sind. Die Excel wird auf einem Panel-PC...
  4. Toggle Button mit Passwort schützen

    in Microsoft Excel Hilfe
    Toggle Button mit Passwort schützen: Hallo zusammen, leider habe ich kaum Ahnung von VBA-Codes, deshalb frage ich hier nach eurer Unterstützung. In einer Excel-Datei soll es einen Toggle-Button geben, der entweder "Freigegeben"...
  5. Abbrechen Button bei Inputbox

    in Microsoft Excel Hilfe
    Abbrechen Button bei Inputbox: Hallo zusammen, ich habe folgendes Problem: wenn ich bei meiner InputBox auf "Abbrechen" oder auf das "X" zum Schließen des Dialogfeldes drücke, erscheint die Fehlermeldung "Typen unverträglich"....
  6. Excel VBA Problem create button

    in Microsoft Excel Hilfe
    Excel VBA Problem create button: Hallo liebe Community, ich hoffe ihr könnt helfen, bin am verzweifeln und kann den Fehler einfach nicht finden. Wir haben eine aufwendig gestallte Excel Liste, wo wir unter anderem Button...
  7. Über Command Button dynamisch Dokumente öffnen

    in Microsoft Excel Hilfe
    Über Command Button dynamisch Dokumente öffnen: Hallo Zusammen, Ich habe eine Tabelle in der über unterschiedliche Kriterien, Produkte angezeigt werden. Nun möchte ich dazu, zu dem entsprechenden Produkt, über einen CommandButton die...
  8. Excel VBA Suche mit Hilfe Command Buttons anzeigen

    in Microsoft Excel Hilfe
    Excel VBA Suche mit Hilfe Command Buttons anzeigen: Hallo Ich habe eine UserForm erstellt, welche mit voneinander Abhängige Comboboxen sucht. Dabei wurde mir schon geholfen in diesen Forum. Ich würde mir gerne das Ergebnis mithilfe eines...
  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