Probleme beim Im- und Export von Nachrichten

Moin!

Ich bin neu hier, hab aber ein Problem, an dem ich schon seit Wochen sitz und einfach nicht weiterkomme. Ich hoffe, dass ihr mir helfen könnt.

Also ich habe vor einiger Zeit eine DB bekommen, bei der der Import und Export von Nachrichten, die sich die Mitarbeiter gegenseitig hinterlegen, nicht so wirklich funktioniert.Wie man das Problem löst habe ich schon herausgefunden, wie mans allerdings umsetzt bleibt mir ein winziges Rätzel.

Die Nachrichten müssen, wenn sie als Datensatz gespeichert werden mit einem einem eindeutigen Schlüssel gespeichert werden, der sich aus der Nachrichtennummer und der Mitarbeiterid zusammensetzt. Das eigentliche Problem liegt allerdings darin, dass ich nicht genau weiß wie man das in VB umsetzt. Wenn ihr mir da ein wenig helfen könntet, wäre das super!

Anbei der Quellcode aus dem Formular, wo irgendwo ein Codestückchen hineinmuss, damit die beiden Schlüssel zusammengefügt werden.

Mercie!

_________________________________________________________________

Option Compare Database

Private Const strBase As String = "SELECT * FROM tbl_DAT_Nachricht "
Private strWhere As String

Private Sub cmdClose_Click()

DoCmd.Close acForm, Me.Name

End Sub

Private Sub Form_Current()

'Dim P As Integer
'P = GetPersonalNr(CurrentUser)
Me!intPIDFrom.DefaultValue = intPersonalID

End Sub

Private Sub Form_Open(Cancel As Integer)

strWhere = "WHERE bolerledigt=False "
Me.RecordSource = strBase & strWhere

End Sub

Private Sub grpShow_AfterUpdate()
Select Case Me!grpShow

Case 1
strWhere = " "
Case 2
strWhere = "WHERE bolerledigt=False "
End Select

Me.RecordSource = strBase & strWhere

End Sub

Private Sub txtNachricht_BeforeUpdate(Cancel As Integer)

End Sub

Private Sub txtNachricht_KeyDown(KeyCode As Integer, Shift As Integer)

If KeyCode = 13 Then
txtNachricht.SetFocus
End If

End Sub

Private Sub txtNachricht_KeyUp(KeyCode As Integer, Shift As Integer)

If KeyCode = 13 Then
txtNachricht.SetFocus
End If

End Sub

Hi Benny,

ich bin zwar kein Datenbankexperte, aber ich will mal versuchen Dir zu helfen.

Was Du vor hast, habe ich weitgehend verstanden, da fehlen nur noch ein paar Details, die klären wir später.

Erst mal zu Deinem Code. Geht es um VB6?

Dann erkläer mir zuerst mal was

Option Compare Database

bedeutet, ich weiß es nicht und mein VB auch nicht.

Dann habe ich in Deinem Code

Me.Recordset

gesehen. Me ist die Form und hat keine Eigenschaft Recordset.

Was soll der Code denn tun? Ich habe nur gefunden, daß ein Recordset geöffnet werden soll, ohne daß damit etwas für mich erkennbares passiert und zwei Prozeduren, die beide dafür sorgen, daß das Textfeld den Focus nicht verliert. Die ‚Nachrichtennummer‘, die Du mit der User-ID zusammenführen willst taucht in dem Code nicht auf.

Warum willst Du die beiden Werte überhaupt zusammenführen? Wenn sie in verschiedenen Feldern stehen, kannst Du sie einzeln auswerten und Dein Programm wird einfacher. Der Datenbank ist es egal, in wie vielen Feldern der Schlüssel steht, er muß nur eindeutig sein.

Was ist das überhaupt für eine Datenbank? Deinem Code kann ich nicht entnehmen, ob Du mit ADO oder DAO arbeitest, ob Du Steuerelemente für die Verbindung zur Datenbank verwendest …

Die Stelle, an der die beiden Werte zusammengeführt werden können, finde ich in Deinem Code nicht. Wo hast Du den Code denn her? Kannst Du den Code mal mit Kommentaren versehen? Das ist ja offensichtlich nur ein Codeschnipsel, die Arbeit wird wo anders erledigt. So wie Du den Code gepostet hast, verstehe ich nicht, was der arbeiten soll.

Gruß, Rainer

Ehrlich gesagt bin ich ein VB-Neuling. Aber ich hab nachgeschaut, es handelt sich um VB6.

Was dieses „Option Compare Database“ ist, weiß ich leider auch nicht, das steht aber auf jeder Seite in der ersten Spalte. Ich habe die Datenbank schon so erhalten, wie sie momentan ist. Ich soll da nur einige Bugs entfernen.

Die Datenbank ist eine komplette Datenverwaltung eines Unternehmens für das wir arbeiten. Leider bin ich hier der Einzige, der ein wenig mit Access umgehen kann, aber leider hatte ich noch nicht mit VB zu tun. Eine gute Seite auf der VB verständlich erklärt wird, habe ich leider auch noch nicht gefunden. Meine Einzige Quelle um an Informationen über die Datenbank zu kommen ist ein ehemaliger Mitarbeiter, der allerdings nun in Spanien wohnt…
Für den Anfang wäre mir auch eine Seite wo ich VB lernen kann sehr hilfreich. Denn so hat das ja keinen Zweck. Ich versteh ja nicht einmal den Unterschied zwischen DAO und ADO (was immer das auch ist…)

Trotzdem Vielen Dank!

Gruß
Benny

VBA-Access - Probleme beim Im- und Export
Hallo Benny,

Ehrlich gesagt bin ich ein VB-Neuling. Aber ich hab
nachgeschaut, es handelt sich um VB6.

Wenn ich Deinen Text unten lese, sieht das eher nach VBA aus. Du öffnest Die Datenbank und dort ‚Module‘, stimmt’s?

Was dieses „Option Compare Database“ ist, weiß ich leider auch
nicht, das steht aber auf jeder Seite in der ersten Spalte.

Ich habe die Datenbank schon so erhalten, wie sie momentan
ist. Ich soll da nur einige Bugs entfernen.

Einige Bugs entfernen? In der Datenbank?
Wenn wir mit VB6 ein Programm schreiben, bleibt die Datenbank unberührt. Kann es sein, daß Du im Access VBA verwendest und dort mit den Formularen arbeitest? Das ist kein VB6! Mit VBA kenne ich mich leider nicht aus. Mit VB6 kein Problem mit VBA kann ich’s nicht.

Die Datenbank ist eine komplette Datenverwaltung eines
Unternehmens für das wir arbeiten. Leider bin ich hier der
Einzige, der ein wenig mit Access umgehen kann, aber leider
hatte ich noch nicht mit VB zu tun. Eine gute Seite auf der VB
verständlich erklärt wird, habe ich leider auch noch nicht
gefunden.

Wenn es wirklich um VB geht, hilft http://www.ActiveVB.de weiter, die haben viele Beispiele. Mit VBA beschäftigen die sich aber auch nur am Rande. Dafür kenne ich auch keine Seite, weil ich mich damit noch nicht beschäftigt habe. Was mit VBA geht, ist mit VB6 immer realisierbar, umgekehrt aber nicht. Deshalb bin ich bei VB6 geblieben.

Meine Einzige Quelle um an Informationen über die
Datenbank zu kommen ist ein ehemaliger Mitarbeiter, der
allerdings nun in Spanien wohnt…

Wenn das Access ist und Du Access hast, kannst Du ja in die Tabellen sehen. Mehr als da steht wird für ein VB6-Programm nicht benötigt.

Für den Anfang wäre mir auch eine Seite wo ich VB lernen kann
sehr hilfreich. Denn so hat das ja keinen Zweck. Ich versteh
ja nicht einmal den Unterschied zwischen DAO und ADO (was
immer das auch ist…)

DAO ist eine einfache, aber veraltete Art, eine Access-Datenbank mit VB anzusprechen. Das funktioniert aber nur bis ‚Access 97‘.
Ein Zugriff mit ADO ist komplizierter, geht aber immer und ist schneller.

Das muß Dich aber nicht kümmern, das wäre nur mit VB6 interessant gewesen, bei Dir kümmert sich Acces darum.

Wie es aussieht, werde ich Dir nicht helfen können. Schade.

Wenn sich hier nicht noch Jemand meldet, versuch’s mal bei ActiveVB im Forum ‚VBA‘. Die kennen sich da besser aus.

Gruß, Rainer

Hallo Rainer!

Ich werds dort im Forum mal versuchen. Trotzdem vielen lieben Dank, dass du dir die Zeit genommen hast mir zu helfen!

Super Forum hier!

Gruß
Benny