Zellen per Userform füllen wenn 2 Bedingungen erfüllt sind

Moderator: ModerationP

Zellen per Userform füllen wenn 2 Bedingungen erfüllt sind

Beitragvon Kubikossi » 17. Sep 2021, 07:16

Hallo zusammen...

über eine Userform lasse ich mir die Werte von Textboxen in eine Zeile schreiben, wenn der Wert der Textbox "tFirmware" mit dem Wert einer Zelle in Spalte A übereinstimmt. In diese Zeile werden dann die entsprechenden Werte eingetragen bzw. überschrieben und danach in der Userform die Textboxen geleert.
Wird der Inhalt von "tFirmware" dagegen nicht im Sheet gefunden, wird abgebrochen.
So schaut mein Code momentan aus (kann man sicher optimieren, aber ich bin Anfänger, daher nicht wundern):

Code: Alles auswählen
Private Sub bÄndern_Click()

Dim oWsh As Worksheet
Dim rngTarget As Range, rngFind As Range
Dim strErste As String
Set oWsh = ThisWorkbook.Sheets("Übersicht")

Set rngFind = oWsh.Range("A:A").Find(What:=Me.tFirmware.Text)
    If rngFind Is Nothing Then
        MsgBox "Die Firmware " & tFirmware.Text & vbLf & _
                            " ist nicht angelegt!"
    Else
        'strErste = rngFind.Address
        If MsgBox(" Die Firmware wirklich ändern?", vbYesNo) = vbYes Then
           
                rngFind.Offset(0, 1) = Me.tVersion.Value
                rngFind.Offset(0, 2) = Me.tAdapter.Value
                rngFind.Offset(0, 3) = Me.tProgrammer.Value
                rngFind.Offset(0, 4) = Me.tÖffner.Value
                rngFind.Offset(0, 5) = Me.tBemerkung.Value
                rngFind.Offset(0, 6) = Me.tRohbaustein.Value
                rngFind.Offset(0, 7) = Me.tLagerplatz.Value
                rngFind.Offset(0, 8) = Me.tFeeder.Value
                rngFind.Offset(0, 9) = Me.tGurtband.Value
                rngFind.Offset(0, 10) = Me.tAbdeckband.Value
                rngFind.Offset(0, 12) = Me.tProduktnummer.Value
                rngFind.Offset(0, 13) = Me.tProduktbezeichnung.Value
                rngFind.Offset(0, 14) = Me.tBausteinbezeichnung.Value
                rngFind.Offset(0, 15) = Me.tBauform.Value
                rngFind.Offset(0, 16) = Me.tChecksumme.Value
                rngFind.Offset(0, 22) = Me.tPipette.Value

            MsgBox "Der Firmware-Eintrag wurde geändert", vbInformation
        End If
    End If
   
    Dim objControl As Control

   For Each objControl In Controls
      Select Case TypeName(objControl)
         Case "TextBox"
            objControl.Text = ""
      End Select
   Next

    With Me.tFirmware
        .Text = ""
        .SetFocus
    End With
  ThisWorkbook.Save
End Sub


Wenn jetzt zum (über)-schreiben der Daten nicht nur die der Inhalt von "tFirmware" mit der Zelle in Spalte A, sondern auch der Inhalt der Textbox "tProduktnummer" in Spalte M übereinstimmen muss, wie müsste der Code denn dann aussehen?
Es kann nämlich sein, dass der Eintrag in Spalte A in mehreren Zeilen vorkommt und sich jeweils in Spalte M unterscheidet.
Es müsste also die Abfrage so oft wiederholt werden, bis beide Werte übereinstimmen
Müsste der Code-Teil dann so ausschauen? (Änderung mit ***** am Zeilenanfang)

Code: Alles auswählen
Private Sub bÄndern_Click()

Dim oWsh As Worksheet
Dim rngTarget As Range, rngFind As Range
Dim strErste As String
Set oWsh = ThisWorkbook.Sheets("Übersicht")

***** Set rngFind = oWsh.Range("A:A").Find(What:=Me.tFirmware.Text)&oWsh.Range("M:M").Find(What:=Me.tProduktnummer.Text)
            If rngFind Is Nothing Then
               MsgBox "Die Firmware " & tFirmware.Text & vbLf & _" ist nicht angelegt!"
    Else
*****         strErste = rngFind.Address
                 If MsgBox(" Die Firmware wirklich ändern?", vbYesNo) = vbYes Then
           
                rngFind.Offset(0, 1) = Me.tVersion.Value
                rngFind.Offset(0, 2) = Me.tAdapter.Value
                rngFind.Offset(0, 3) = Me.tProgrammer.Value
                rngFind.Offset(0, 4) = Me.tÖffner.Value
                rngFind.Offset(0, 5) = Me.tBemerkung.Value
                rngFind.Offset(0, 6) = Me.tRohbaustein.Value
                rngFind.Offset(0, 7) = Me.tLagerplatz.Value
                rngFind.Offset(0, 8) = Me.tFeeder.Value
                rngFind.Offset(0, 9) = Me.tGurtband.Value
                rngFind.Offset(0, 10) = Me.tAbdeckband.Value
                rngFind.Offset(0, 13) = Me.tProduktbezeichnung.Value
                rngFind.Offset(0, 14) = Me.tBausteinbezeichnung.Value
                rngFind.Offset(0, 15) = Me.tBauform.Value
                rngFind.Offset(0, 16) = Me.tChecksumme.Value
                rngFind.Offset(0, 22) = Me.tPipette.Value

*****             Set rngFind = oWsh.Range("A:A").FindNext(rngFind)&oWsh.Range("M:M").FindNext(rngFind)
*****             Loop Until rngFind.Address = strErste Or rngFind Is Nothing

            MsgBox "Der Firmware-Eintrag wurde geändert", vbInformation
        End If
    End If
   
    Dim objControl As Control

   For Each objControl In Controls
      Select Case TypeName(objControl)
         Case "TextBox"
            objControl.Text = ""
      End Select
   Next

    With Me.tFirmware
        .Text = ""
        .SetFocus
    End With
  ThisWorkbook.Save
End Sub

oder wäre das falsch?


Gruß
Rene
Kubikossi
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 15
Registriert: 22. Jun 2021, 12:38

Re: Zellen per Userform füllen wenn 2 Bedingungen erfüllt si

Beitragvon HKindler » 17. Sep 2021, 07:50

Hi,

zunächst einmal vorab: Welchen Vorteil versprichst du dir von einer Userform im Vergleich zum direkten Eintrag in die Tabelle? Du merkst: ich bin kein Freund von solchen "Spielereien"!

Du musst erst nach der Firmware suchen (so wie bisher). Dann schaust du nach der Produktnummer in derselben Zeile. Falls diese nicht übereinstimmt, suchst du die nächste Firmware.

ungetestet ungefähr so
Code: Alles auswählen
Set rngFind = oWsh.Range("A:A").Find(What:=Me.tFirmware.Text)
If rngfind is nothing then
    msgbox "Firmware nicht gedunden"
Else
    ErsterFund = rngfind.address
    Do while rngfind.offset(0, 12) <> Me.tProduktnummer.Value
        set rngFind = oWsh.Range("A:A").FindNext
        if rngfind.address = ErsterFund then
            msgbox "Produktnummer nicht gefunden"
            exit do
        end if
    loop
    if rngfind.offset(0, 12) = Me.tProduktnummer.Value then
        'hier deine Befehle für einen Fund
    End if
end if


Andere Möglichkeit: Mach dir eine zusätzlich Spalte mit dem Inhalt von Spalte A und Spalte M also z.B. =A2&"#"&M2 und suche dann in dieser Spalte nach der Kombination.
Gruß,
Helmut

----------------------------
Windows 10 Enterprise (64 Bit) / Office 365 ProPlus (32 Bit)
Benutzeravatar
HKindler
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6280
Registriert: 04. Jul 2013, 09:02
Wohnort: Schwarzwald

Re: Zellen per Userform füllen wenn 2 Bedingungen erfüllt si

Beitragvon Kubikossi » 17. Sep 2021, 08:17

Hallo Helmut,

danke für deine schnelle Antwort und deine Lösung.

Um auf deine Frage zu kommen...
Das Ganze ist eine umfangreiche Datenbank für all unsere Maschinenparameter und die Abfrage dieser über die Userform gelöst, von wo aus wir den jeweils benötigten Datensatz inkl. berechneter Fertigungs-Stückzahlen und Produktionszeiten auf ein vordefiniertes Blatt ausdrucken, und zudem von da aus dann auch in ein weiteres Sheet geschrieben werden zwecks Jahreszahlen/Statistiken.
Daher dann auch die Änderungen oder Neuanlagen von Daten gleich mit über die Userform. Alles unter einem Dach sozusagen.
Zuletzt geändert von Kubikossi am 22. Sep 2021, 12:50, insgesamt 1-mal geändert.
Kubikossi
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 15
Registriert: 22. Jun 2021, 12:38

Re: Zellen per Userform füllen wenn 2 Bedingungen erfüllt si

Beitragvon DerHoepp » 17. Sep 2021, 08:51

Moinsen,

wenn du Datenbank-Funktionen nutzen willst, könnte es sich anbieten, deine Excelliste mit ADODB direkt wie eine Datenbank zu behandeln, dann kannst du direkt mit SQL-Statements arbeiten. Ansonsten bietet sich meines erachtens statt eines .Find() ein (mehrfaches) Filtern mit dem Autofilter an.

Viele Grüße
derHöpp
DerHoepp
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 9712
Registriert: 14. Mai 2013, 11:08

Re: Zellen per Userform füllen wenn 2 Bedingungen erfüllt si

Beitragvon Kubikossi » 27. Sep 2021, 09:45

[quote="HKindler"]Hi,

zunächst einmal vorab: Welchen Vorteil versprichst du dir von einer Userform im Vergleich zum direkten Eintrag in die Tabelle? Du merkst: ich bin kein Freund von solchen "Spielereien"!

Du musst erst nach der Firmware suchen (so wie bisher). Dann schaust du nach der Produktnummer in derselben Zeile. Falls diese nicht übereinstimmt, suchst du die nächste Firmware.

ungetestet ungefähr so
Code: Alles auswählen
Set rngFind = oWsh.Range("A:A").Find(What:=Me.tFirmware.Text)
If rngfind is nothing then
    msgbox "Firmware nicht gedunden"
Else
    ErsterFund = rngfind.address
    Do while rngfind.offset(0, 12) <> Me.tProduktnummer.Value
        set rngFind = oWsh.Range("A:A").FindNext
        if rngfind.address = ErsterFund then
            msgbox "Produktnummer nicht gefunden"
            exit do
        end if
    loop
    if rngfind.offset(0, 12) = Me.tProduktnummer.Value then
        'hier deine Befehle für einen Fund
    End if
end if

Hallo Helmut,

leider passt wohl was mit dem Code nicht ganz. Obwohl die Produktnummer übereinstimmt bekomme ich die Meldung, Produktnummer nicht gefunden.
Ich hab das Excel-File mal angehängt.
Die beiden zu überprüfenden Werte bedinden sich in Spalte A (Firmware) und M (Produktnummer) im Sheet "Übersicht".
In der Userform ist es der Reiter "Anlegen/Ändern".
In der Textbox "Produkt-Bezeichnung (Suchfeld) kann ich nach einen Textstück suchen. Die gefundenen Ergebnisse kommen dann in der Listbox, von wo aus sich mit Doppelklick die Werte des gewünschten Produkts in alle Textboxen übernehmen lassen.
Ändere ich hier etwas, z.B. in der Textbox "Version" und klicke dann auf Ändern, soll überprüft werden, ob Firmware und Produktnummer in dieser Kombination vorhanden sind, und nur dann die Werte dieser Zeile im Sheet "Übersicht" geändert werden.
Ansonsten soll nix passieren, dann kann man die Werte mittels "Neu" Button in eine neue Zeile anlegen.

Vielleicht findet jemand die Stelle, die nicht passt, also warum immer die Meldung kommt, Produktnummer nicht vorhanden, obwohl sie es ist.
Gruß
Rene
Zuletzt geändert von Kubikossi am 01. Okt 2021, 05:46, insgesamt 1-mal geändert.
Kubikossi
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 15
Registriert: 22. Jun 2021, 12:38

Re: Zellen per Userform füllen wenn 2 Bedingungen erfüllt si

Beitragvon HKindler » 27. Sep 2021, 14:06

Hi,

es handelt sich hier um den typischen Userform-Fehler. Eine Textbox ist eine Textbox und eine Zahl ist eine Zahl und kein Text. Mit z.B.
Code: Alles auswählen
Do While rngFind.Offset(0, 12) <> Me.tProduktnummer.Value
vergleichst du jedoch eine Zahl, mit einem Text. Da ein Text immer ungleich einer Zahl ist, würde die Schleife endlos durchlaufen, wenn nicht bei der Rückkehr zur ersten Adresse abgebrochen würde.

Was kann man dagegen tun? Na Äpfel mit Äpfeln und Birnen mit Birnen vergleichen. Da eine Textbox immer einen Text enthält (auch wenn man eine Zahl reinschreibt, wird diese sofort in Text umgewandelt), eine Zelle jedoch alles mögliche enthalten kann, ist es sinnvoll den Inhalt der Zelle zunächst in einen Text umzuwandeln und erst dann zu vergleichen. Dies erreichst du z.B. mit
Code: Alles auswählen
Do While rngFind.Offset(0, 12) & "" <> Me.tProduktnummer.Value
oder mit
Code: Alles auswählen
Do While CStr(rngFind.Offset(0, 12)) <> Me.tProduktnummer.Value

Achtung einige Zeilen tiefer kommt eine ähnliche Situation.

Übrigens ist das mit einer der Gründe, wieso ich Userforms nicht mag. An allen Ecken und Kanten stößt man auf solche unvorhergesehenen Probleme. Noch schlimmer wird es, wenn man mit einem Datum hantieren muss.
Gruß,
Helmut

----------------------------
Windows 10 Enterprise (64 Bit) / Office 365 ProPlus (32 Bit)
Benutzeravatar
HKindler
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6280
Registriert: 04. Jul 2013, 09:02
Wohnort: Schwarzwald

Re: Zellen per Userform füllen wenn 2 Bedingungen erfüllt si

Beitragvon Kubikossi » 30. Sep 2021, 05:46

Ich hab jetzt in beiden Zeilen
Code: Alles auswählen
rngFind.Offset(0, 12) <> Me.tProduktnummer.Value

durch
Code: Alles auswählen
rngFind.Offset(0, 12) & "" <> Me.tProduktnummer.Value

ersetzt.

Funktioniert leider immer noch nicht.
Es kommt nach wie vor die Meldung, dass die Produktnummer nicht gefunden wurde, dann aber noch die Meldung, dass der Eintrag geändert wurde.
Nur schreibt er eben die Daten in die erste Zeile, die er mit dem Firmware-Eintrag übereinstimmt und nicht in die, in welcher Firmware und Produktnummer übereinstimmen.
Kubikossi
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 15
Registriert: 22. Jun 2021, 12:38

Re: Zellen per Userform füllen wenn 2 Bedingungen erfüllt si

Beitragvon HKindler » 30. Sep 2021, 10:00

Hi,

wenn man der Meinung ist, eine solch umfangreiche Userform verwenden zu müssen - für etwas was Excel von sich aus anbietet - dann sollte man auch vernünftig debuggen können.

Wenn du das tun würdest, würdest du schnell feststellen, dass
Code: Alles auswählen
set rngFind = oWsh.Range("A:A").FindNext
immer wieder beim ersten Fund landet. Wenn man dann mal in der Hilfe zu FindNext nachschaut, dann stell man fest, dass dieses noch einen Parameter kennt, nämlich After. Und wenn man dort nachliest, dann steht dazu
Fall dieses Argument nicht angeben ist, beginnt die Suche nach der Zelle in der oberen linken Ecke des Bereichs.
Also landest du immer beim gleichen Eintrag. Was du dagegen tun musst? Na rate mal...

Zu den Bordmitteln von Excel: wenn du deine Tabelle vernünftig - sprich ohne Leerzeilen - aufbaust, dann kannst du hingehen und irgendeine Zelle in der Tabelle auswählen und dann Alt-N-M drücken. Daraufhin öffnet sich die sogenannte Datenmaske, die all das bietet, was du mit deiner Userform machen willst.
Wobei meiner Meinung nach auch schon der Autofilter reichen würde.
Gruß,
Helmut

----------------------------
Windows 10 Enterprise (64 Bit) / Office 365 ProPlus (32 Bit)
Benutzeravatar
HKindler
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6280
Registriert: 04. Jul 2013, 09:02
Wohnort: Schwarzwald

Re: Zellen per Userform füllen wenn 2 Bedingungen erfüllt si

Beitragvon Kubikossi » 30. Sep 2021, 10:24

HKindler hat geschrieben:dann kannst du hingehen und irgendeine Zelle in der Tabelle auswählen und dann Alt-N-M drücken. Daraufhin öffnet sich die sogenannte Datenmaske, die all das bietet, was du mit deiner Userform machen willst.

Wenn ich eine Zeile auswähle und dann ALT N M drücke, passiert gar nichts.

HKindler hat geschrieben:dann sollte man auch vernünftig debuggen können.

Wie ich oben schon geschrieben habe, ich bin Anfänger.
Und wir haben hier Leute, die sich mit Excel noch viel weniger auskennen, daher per Userform.
Aber is ok... wenn man eher meint, dass hier die Leute mit viel Wissen die mit wenig Wissen von oben herab behandeln und zurechtstutzen müssen, dann bin ich in diesem Forum falsch.

Auf Wiedersehen
Kubikossi
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 15
Registriert: 22. Jun 2021, 12:38

Re: Zellen per Userform füllen wenn 2 Bedingungen erfüllt si

Beitragvon HKindler » 30. Sep 2021, 11:24

Hi,

manche Leute fühlen sich aber schnell auf den Schlips getreten. Immerhin habe ich dir bisher zu all deinen Fragen einen Tipp gegeben. ein klein wenig selber arbeiten darf man wohl noch verlangen. Oder ist es für dich zu anspruchsvoll, dir zu überlegen was man beim Parameter After wohl angeben könnte?

Ich selbst habe auch nicht alles im Kopf. Ich habe nichts anderes gemacht, als das was ich dir vorgeschlagen habe: nämlich den Debugger bemüht. Dabei bin ich deine Routine im Einzelschritt durchgegangen und habe mir angeschaut, was genau passiert. Um dann festzustellen, dass FindNext eben nicht wie erwartet den nächsten Fund, sondern immer nur den ersten Fund liefert. Was tut man dann? Man stellt den Cursor auf FindNext und lässt sich mit F1 die Hilfeseite anzeigen. Dort ist dann alles beschrieben.

Wie gesagt habe ich selbst diese Schritte auch machen müssen, um den Fehler zu finden. Und dann ist es von mir herablassend dich darauf aufmerksam zu machen, wie man so etwas angeht? Und es ist auch herablassend, dir bei deinem Kenntnisstand zu raten, bereits vorhandene Excel-Funktionalitäten zu verwenden, statt alles selbst neu zu erfinden?

Habe übrigens die Tastenkombination in Windows auf Excel 365 getestet, bevor ich die Tastenkombination beschrieben habe (auch diese musste auch erst googeln, da ich solche "Probleme" immer mit dem Autofilter erschlage). Also bei mir funktioniert es. Ansonsten solltest du einfach mal nach "Excel Datenmaske" googeln.
Gruß,
Helmut

----------------------------
Windows 10 Enterprise (64 Bit) / Office 365 ProPlus (32 Bit)
Benutzeravatar
HKindler
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6280
Registriert: 04. Jul 2013, 09:02
Wohnort: Schwarzwald

Re: Zellen per Userform füllen wenn 2 Bedingungen erfüllt si

Beitragvon DerHoepp » 30. Sep 2021, 13:53

Moinsen allerseits,

wie so oft wird versucht, ein mangelhaftes Datenmodell / ein gewachsenes Excel-Papier-Bastelkonstrukt mit ausbaufähigen Programmierkenntnissen zu Userformisieren, damit Nutzer mit noch weniger Kenntnissen dies fehlerfrei bedienen können. Wie so oft wird statt einer Neugestaltung des Datenmodells versucht, nix zu ändern, weil das ja immer so war (andere Gründe sind natürlich auch möglich). Und wie so oft ist die Reaktion auf sachdienliche Hinweise eher unsachlich.

Insofern finde ich schon bemerkenswert, dass Helmut vier Mal zu helfen versuchte! Ich persönlich bin ausgestiegen, nachdem ich mir die Quelldatei angesehen habe, weil ich in etwa einen solchen Diskussionsverlauf erwartet habe. Ich finde, ihm gebührt dafür Dank.

Also Kubi, statt deinen (verständlichen) Ärger und Frust über einen nicht funktionierenden Prozess auf deiner Seite der Tastatur (damit meine ich deine Zwickmühlensituation, in der du versuchen musst, Arbeitserleichterungen für Excel-Ganz-Unkundige umzusetzen ohne die notwendige professionelle Unterstützung die es eigentlich benötigen würde) kostenlosen Helfern in einem Forum zukommen zu lassen, würde ich vorschlagen, entweder jemanden für deine Wunschlösung zu bezahlen oder dir die Anregungen zu Herzen zu nehmen und künftig ein ordentlich strukturiertes System mit Standardfunktionen einzuführen. Für Datenbankfunktionalitäten eignet sich Access für den Einstieg (aber auch da ist die ausführliche Auseinandersetzung mit Datenmodellen Grundlage für das weitere Vorgehen.

Und weil ich nicht nur meckern will, hier noch ein paar konkrete TIpps:
a) Verzichte auf VBA und Userformen, erstelle Tabellen, die sich mit Autofiltern und händischen Eingaben eindeutig füllen und bearbeiten lassen (hooray, du sparst dir das Erlernen von VBA und kannst einfache Plausibilisierungen mit bedingter Formatierung und Datengültigkeiten abbilden, nebenbei erhältst du einen prima Einblick in dein Datenmodell).
b) Wenn das nicht reicht: Erstelle Tabellen, die sich zunächst mit Autofiltern und händischen Eingaben eindeutig füllen und bearbeiten lassen. Erstelle in VBA Prozeduren, die anhand eines Schlüsselwertes ganze Datenzeilen ermitteln oder überschreiben können. Anschließend erstellst du ein Tabellenblatt als Formular, das du mit den erzeugten Prozeduren befüllst, und aus dem du die erzeugten Prozeduren aufrufst. Nutze die Datenüberprüfung und die bedingte Formatierung zur Plausibilisierung und Validierung deiner Eingaben (hooray, du musst nur minimal VBA lernen, kannst für wichtige Sachen einfache Formeln benutzen und hast trotzdem einen grundlegenden Schutz deiner Quelldaten).
c) Wenn das nicht reicht: Entwickle eine einfache Klasse, die das Schreiben in und das Lesen aus der Datenquelle übernimmt und die die Plausibilisierung der Werte hinbekommt. Binde die Klasse in dein Tabellenblattformular ein (hooray, so sparst du dir das Casting von Werten und bist trotzdem hochflexibel!)
d) Wenn das immer noch nicht reicht: Nach punkt c) kannst du nun beliebig abstrahieren. Dir löscht ständig jemand deine Quelldatei oder bastelt darin händisch herum? Plötzlich sind 6 % deiner ID-Nummern nicht mehr eindeutig? Schreibe ein Interface, mit dem deine Datenverarbeitungsklasse arbeiten kann und schreibe je möglicher Quelle einen Adapter, der das Interface implementiert (dann ist es egal, ob deine tatsächliche Quelle eine Textdatei, ein ListObject, eine Datenbanktabelle, eine Bilddatei oder sonstwas ist). Weil du nicht alles neu machen willst, lernst du, dass es bereits eine strukturierte Sprache gibt, die Datenquellen abfragen und ändern kann (SQL), mit etwas Gefummel bekommst du es auch hin, einen deiner "Adapter" mit den bereits existierenden Klassenbibliotheken ADOX und ADODB zu erstellen. Auf der anderen Seite der Verarbeitungsklasse erstellst du ein Interface, welches die Präsentation abstrahiert und schwupps kannst du eine UserForm entwickeln, die das Präsentationsinterface implementiert, oder eine Tabellenblattklasse, die das schafft, oder eine klasse, die Textdateien als Input nimmt.
e) Nachdem du den Olymp erklommen hast, fällt dir auf, dass dein Datenmodell aus mehr als einer Tabelle besteht, die in einer Beziehung zueinander stehen. Weil du dein Datenmodell nun in- und auswendig kennst, hast du keine Probleme aus dem Datenmodell eine relationale Datenbank zum Beispiel mit Access zu erstellen. Du bist erst etwas betrübt, dass die Schritte a-d eineinhalb Jahre in Anspruch genommen haben, während der Formularassistent all das in unter fünf Minuten erledigt, freust dich aber anschließend, dass du dazugelernt hast und eine fertige Lösung erarbeitet hast, die durch Trennung von Front- und Backend mehrnutzerfähig ist und die du nach einiger Zeit des Lernens in eine "echte" Datenbank auslagern kannst, die du dann über ein beliebiges UserInterface füllen kannst.

Und am wichtigsten: Lass dich nicht abschrecken! Daten effizient zu verarbeiten benötigt Einarbeitungszeit (die sich hoffentlich irgendwann durch die Vermeidung ineffizienter Arbeit wieder amortisiert).

Viele Grüße
derHöpp
DerHoepp
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 9712
Registriert: 14. Mai 2013, 11:08


Zurück zu Excel Forum (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 17 Gäste