Office: (Office 2003) Access VBA Schleife programmieren? Wie?

Helfe beim Thema Access VBA Schleife programmieren? Wie? in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo Leute, ich brauche hilfe um eine VBA Code zu schreiben. Ich bin VBA Anfänger. Folgendes Problem habe ich: - eine risiege Tabelle mit mehr als... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von lazar33, 9. März 2011.

  1. Access VBA Schleife programmieren? Wie?


    Hallo Leute,

    ich brauche hilfe um eine VBA Code zu schreiben. Ich bin VBA Anfänger.

    Folgendes Problem habe ich:

    - eine risiege Tabelle mit mehr als 100.000 Datensätzen

    - ich muss eine Splate prüfen

    - z.B. ich suche nach "AB" in einer Spalte, wenn "AB" gefunden ist, soll überprüft werden ob nächste Wert (untere Zeile) "BC" ist. Wenn "BC" dann soll in einer neue Splate "Prüfen" stehen wenn nicht "OK"

    - dazu benötige eine Schleife die ganze Spalte durchsucht und wenn einen Wert gefuden ist soll folgende Wert überprüft werden.

    Hat jemand eine Idee wie soll es funktionieren?

    MfG Anton

    :)
     
    lazar33, 9. März 2011
    #1
  2. Hallo und willkommen im Forum *hands,

    da bleiben einige Fragen offen:
    • gibt es ein Feld, das die Reihenfolge bestimmt?
    • sind es immer genau zwei Zeilen, die untersucht werden sollen, oder sind die Zeilen eher durch einen pro Block gleichbleibenden Wert gekennzeichnet?
    • welche der Zeilen soll mit OK bzw. Prüfen markiert werden: die AB-Zeile oder die andere?

    Worum gehts da? Irgendwie riecht das nach Excel...
     
    Atrus2711, 10. März 2011
    #2
  3. Hallo Lazar33,
    wenn das eine Access-Frage ist, so habe ich solche Aufgaben mit geschachtelten Abfragen gelöst. Ich unterstelle mal, dass die beiden Zeilen (Objekte), die du vergleichen willst, irgendwie einen gemeinsamen Key(teil) aufweisen:
    Dann baust Du die erste Abfrage und suchst die Entitätsmenge mit 'AB'.
    In einer zweiten Abfrage suchst Du Zeilen mit 'CD' und joinst gegen die erste Abfrage (alle aus 1 und nur die zutreffenden aus 2 oder umgekehrt; wie Du es brauchst!). Als Attribute gibst Du in Abfrage2 aus: Key; Sp1: inhalt aus 1; Sp2: Inhalt aus 2. Prüftext: Wenn Sp1 = 'AB' und Sp2 = 'CD' then Prüftext = 'x' else Prüftext = 'y'.
    Wenn du den Prüftext tatsächlich in der Tabelle eintragen willst, musst Du noch eine Update-Ubfrage bauen, die auf der 2. Abfrage basiert. Vielleicht genügt aber auch die Abfrage - die du ja dann z.B. nach Excel exportieren kannst.
    Im Großen und Ganzen sollte das auf diese Art und Weise funktionieren, probiers mal aus.

    Ich jedenfalls hatte für solche Zwecke nie VBA benutzt - was aber sicher auch daran liegt, dass ich VBA nur dann genutzt habe wenn Access-Funktionalität nicht mehr reichte.

    Viele Grüße
     
    VRAccFan, 10. März 2011
    #3
  4. Access VBA Schleife programmieren? Wie?

    Danke Atrus2711 =)

    Es sieht ungefähr so aus:

    Werte --> (Neu Splate einfügen) "Prüfen"
    AB OK
    DG OK
    GH OK
    AB OK
    CD PRÜFEN!

    Es ist access da gibts mehr 100.000 einträge....
     
    lazar33, 10. März 2011
    #4
  5. Hi,

    @lazar:
    das beantwortet nicht meine Fragen...
     
    Atrus2711, 10. März 2011
    #5
  6. - gibt es ein Feld, das die Reihenfolge bestimmt?

    Ja es gibt ein Feld die Reihenfolge bestimmt aber durch ausfilterung kann sein, dass z.B. 123 und dann gleich 8 vorkommt.

    - sind es immer genau zwei Zeilen, die untersucht werden sollen, oder sind die Zeilen eher durch einen pro Block gleichbleibenden Wert gekennzeichnet?

    Ja es ist immer zwei Zeilen aktuelle und folgende Zeile.

    welche der Zeilen soll mit OK bzw. Prüfen markiert werden: die AB-Zeile oder die andere?

    Es soll neue Spalte eingefügt werden und da sollte dann stehen "OK" oder "PRÜFEN"

    Danke im Voraus

    MfG lazar33
     
    lazar33, 10. März 2011
    #6
  7. Und woran erkennst Du (und somit später das Programm) dass OK bzw. PRÜFEN eingetragen werden soll/muß?
    Steht im ersten Post, sry überlesen.
    Dann stimmt aber das Beispiel in #4 nicht.
    Warum soll jetzt bei CD ein PRÜFEN erscheinen? Dachte nur bei AB gefolgt von BC... *confused.gif*

    Wo kommen diese "unnormalisierten" Daten denn her?
    Du versuchst hier Access wie Excel zu nutzen (vmtl. weil Excel 2003 mit den +100.000 "Zeilen" nicht klar kommt).
    Excel "denkt" in Zeilen und Spalten. Access "denkt" in Datensätzen. Das ist ein himmelweiter Unterschied...
     
    CptChaos, 10. März 2011
    #7
  8. Access VBA Schleife programmieren? Wie?

    Sorry,

    ja genau genau wenn "BC" als nächtes wert vorkommt dann muss prüfen stehen! Dann muss da anstatt "CD" "BC" stehen!
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    lazar33, 11. März 2011
    #8
  9. 123 und dann 8? Bei mir ist 123 größer als 8.... oder sollte das etwa ein Textfeld sein? Also nochmal die Frage: haben die zu untersuchenden Zeilen ein Feld, das die Pärchen hintereinanderstellt?

    Die neue Spalte ist kein Problem. Aber welche der zwei Zeilen eines Pärchens soll in der neuen Spalte das OK bekommen? die AB-Zeile oder die andere?
     
    Atrus2711, 11. März 2011
    #9
  10. Also brauchst Du letztlich eine Prüfung nach folgendem Muster:
    Code:
    Magst Du mir noch meine anderen, m.E. wichtigeren Fragen zu dem Thema, beantworten?
    Die Daten scheinen nicht normalisiert zu sein und Access wird hier als Ersatz für Excel genutz... ich bezeichne das gerne als Accel *wink.gif*
     
    CptChaos, 11. März 2011
    #10
  11. Die gewünschte Prüfung würde man vorzugsweise mit einer SQL-Anweisung umsetzen (Performance, Aktualität durch augenblickliche Neuberechnung).

    Für diese SQL-Anweisung gibt es aber keine Reihenfolge von Datensätzen, es sei denn, man stellt sie explizit her durch Sortieren nach bestimmten Kriterien. Daher fragte Martin nach: "gibt es ein Feld, das die Reihenfolge bestimmt?"

    Ansonsten ist die Tabelle als ungeordnete Datenmenge zu betrachten, da gibt es keinen bestimmten nächsten Datensatz.
    EinFeld enthält jetzt Text (aufsteigende Sortierung) oder Zahlen (absteigende Sortierung)?
     
  12. Hallo, die Diskussion hier ist ja schon einigermaßen konfus.
    Aber auch ich hatte schon solche Situationen, wo es Daten gab, die von irgendwo her kamen und die nicht gerade datenbank-like aussahen - und die ich dann mit Access ganz gut behandeln konnte, wenn auch etwas umständlich (über mehrere Schritte), aber m.E. besser als mit jedem anderen Hilfsmittel.

    Tipp: Ich bildete beim Importieren synthetische laufende Nummern (auto-id), die ich dann als Reihenfolge verwenden konnte. In meinem Abfragebeispiel könnte man diesbezüglich bei der ersten Abfrage aus der lfdNr ein Feld 'lfdNr_plus1' bilden. Mit diesem Wert könnte man dann gegen die zweite Abfrage verknüpfen / joinen. Dann hast Du immer einen AB-Satz und dazu den direkt dahinter folgenden Satz in einer Zeile und kannst (musst) feststellen, ob der dazu passt oder nicht. Denn es muss wohl eine Möglichkeit geben, das Zusammengehören von zwei aufeinander folgenden Datensätzen zu kontrollieren - unabhängig von der AB/BC Folge.

    Worauf ich nochmal hinweisen möchte: Muss dieses 'Prüfen' wirklich in die Daten hinein oder genügt es, diese Hinweise in einer Auswertung zu sehen? Unabhängig davon kann man natürlich auch das Ergebnis einer Abfrage wieder für einen Insert (neue Tabelle) oder Update benutzen.

    Tschüss!
     
    VRAccFan, 11. März 2011
    #12
  13. Access VBA Schleife programmieren? Wie?

    Ich habe 1 2 3 gemeint =) nicht 123. Es soll in andere zeile OK oder Prüfen kommen.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    lazar33, 11. März 2011
    #13
  14. Es gint eine Zeilennummer:

    ArtID Wert ZEilennummer
    1 AB 1
    1 BA 2
    1 BB 3
    1 GH 5
    2 AB 1
    2 BC 3
    2 HJ 5
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    lazar33, 11. März 2011
    #14
  15. Also bestimmen ArtID und darutner dann Zeilennummer die Reihenfolge, richtig? ArtID zeigt die Gruppe zusammengehöriger Sätze an, und die Zeilennummer schafft gruppenintern die Reihenfolge?
     
    Atrus2711, 11. März 2011
    #15
Thema:

Access VBA Schleife programmieren? Wie?

Die Seite wird geladen...
  1. Access VBA Schleife programmieren? Wie? - Similar Threads - Access VBA Schleife

  2. Word Access VBA Fußzeile formatieren

    in Microsoft Access Hilfe
    Word Access VBA Fußzeile formatieren: Guten Tag allerseits. Ich möchte über Access VBA ein Word Dokument erstellen. Das funktioniert soweit aus. Mite diesem Code formatiere ich die Fußzeile: ' ' Seitennumerierung in Fußbereich '...
  3. Auslesen einer Abfrage in VBA Modul

    in Microsoft Access Hilfe
    Auslesen einer Abfrage in VBA Modul: Hallo zusammen, ich wünsche allen ein frohes und gesundes Jahr 2024. Ich habe eine alte Access 2003 und da habe ich zur Ermittlung von Planungsdaten folgende Funktion genutzt, jetzt mit Office 365...
  4. Doppelkopf Spielplan (jeder gegen jeden) VBA / Excel / Access

    in Microsoft Excel Hilfe
    Doppelkopf Spielplan (jeder gegen jeden) VBA / Excel / Access: Hallo zusammen *:)* in diesem Forum habe ich bereits zwei Beiträge gefunden, die in die Richtung meines Anliegens gehen - beides passt letzten Endes dann aber leider doch nicht auf meinen...
  5. Eine Schleife mit zwei tebellen vba Access

    in Microsoft Access Hilfe
    Eine Schleife mit zwei tebellen vba Access: Hallo zusammen! Es gibt’s zwei Tabellen und ich wollte aus zweiter Tabelle die Daten nach einem Kriterium (FLTR=0) an erste Tabelle übertragen (kopieren). Geht aber nicht. Hier ist mein Kode,...
  6. Access - Listeneintrag per VBA einem Feldnamen zuweisen

    in Microsoft Access Hilfe
    Access - Listeneintrag per VBA einem Feldnamen zuweisen: Hallo, ich möchte die Einträge eines Listenfelds mit einem bestimmten Feldnamen innerhalb einer VBA-Routine verbinden, stosse da aber programmiertechnisch an meine Grenzen... Hintergrund: Für den...
  7. MS ACCESS Insert into Foto in Datenbank

    in Microsoft Access Hilfe
    MS ACCESS Insert into Foto in Datenbank: Hallo. Ich benutze MS ACCESS im Office 365. Habe eine Anwendung geschrieben, in der in einem Formular ein Foto im Typ Bild dargestellt wird. Ich möchte nun dieses Foto mittels einem "Insert...
  8. Abfrage per VBA zusammenbauen

    in Microsoft Access Hilfe
    Abfrage per VBA zusammenbauen: Hi, Ich habe in meiner Datenbank das angehängte Formular, mit dem die Datensätze (Prüfungsfragen) nach bis zu 3 verschiedenen Kriterien gefiltert werden können. Bislang habe ich 8 Verschiedene...
  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