Ich habe mal eine allgemeine Frage: Gibt es keinen Site z.B. wo man sich einen VBA Code (um)schreiben lassen kann, das kann auch was kleines kosten, ist so etwas bekannt, (z.B. Studenten oder Hobbyprogrammierer) für die die im VBA Schwierigkeiten haben. Ich lese zwar ein Buch nach dem andern aber bin immer noch sehr weit entfernt vom richtigen VBA Schreiben.
Danke
Lg
Hallo,
Ich habe wenig Zeit im Moment, aber wir können es ja mal andenken...
http://www.access-o-mania.de/forum/index.php?topic=6969.msg84854#msg84854
Hallo,
Oh das wäre super, es ist auch nichts was jetzt wegläuft, ich versuche dann alle Daten mal zusammen zu nehmen, und eine ausführliche Beschreibung aufzusetzen, sowie ein Access Formular zu gestalten, wie es in etwa in meiner Datenbank jetzt aussieht, sobald ich das dann alles zusammen habe würde ich das per Email dann an Sie senden. Wird aber frühestens Montag dann werden. Vielen Dank
Hallo,
ok,
wir müssen aber am Besten telefonisch dann vorher die Aufgabe analysieren.
Ja das ist kein Problem,
Ich setze übers Wochenende wie ich jetzt Zeit kriege eine kleine Beispieldatenbank auf spätestens am Montag, und lasse Ihnen dann alles per Email zukommen, sowie auch meine Kontaktdaten, damit wir das abklären können, kein Problem, jetzt schon mal ein riesiges Dankeschön :)
Hi,
Ich habe die Dateien nun mal aufbereitet und per Email an Sie geschickt.
Vielen Dank
Mfg
Hallo,
Ich habe noch ein Problem im Modul als ich jetzt die Datei in meine Datenbank hineinsetzen wollte. Beim öffnen der Datei über Button startet der Debugger mit folgender gelben Zeile
Public Function Filepicker() As String
Dim fd As FileDialog <------ wird gelb markiert mit begründung: Benutzerdefinierter Typ nicht definiert
Set fd = Application.FileDialog(msoFileDialogFilePicker)
Dim vrtSelectedItem As Variant
Wo hab ich da was vergessen
Danke
Hallo,
es muss der Verweis auf die MS Office-Library gesetzt werden.
(VBA-Editor/Extras/Verweise)
Und wo muss ich die eingeben , ist jetzt mit Verweis der Pfad gemeint?
Oder anders formuliert, das heisst ich muss dieses Feld anhaken?
Ich habe hier 3 zur Auswahl
MS Office 14.0 Authorization Control
MS Office 14.0 Object Library (denke mal diese hier ist gemeint)
MS Office Euro converter
Hallo,
genau, den Haken bei MS Office 14.0 Object Library setzen.
Ok danke werde das Montag mal versuchen.
Hallo,
So langsam komme ich weiter :) Das mit dem Verweis hat mal weitergeholfen, jetzt stehe ich beim Drucken vor einem Problem, heisst Excel Datei wird aufgerufen, aber der Code springt dann beim Drucken auf GOTO_ERROR mit dem Fehler:
3265 Element in dieser Auflistung nicht gefunden
Was könnte das noch sein?
Danke
Hallo,
das heißt, dass ein Feld (das Element) z. B. in einem Recordset nicht existiert.... Poste mal den ganzen Code dieser Prozedur.
Ok Vielen Dank
Jetzt hab ich den Fehler mal beseitig, jetzt läuft der Code durch nur druckt er noch nicht weder PDF noch auf dem Drucker, mal kucken was das noch sein kann :)
Ich komm hier echt nicht weiter, die Excel Datei wird immer geöffnet und geschlossen aber es kommt nicht zum Druck, das ist echt Wahnsinn. :'( Wenn es mir möglich wäre die Datenbank zu Ihnen zu mailen würden Sie den Fehler bestimmt finden, aber da die Datenbank aufgeteilt ist in Frontend und Backend, wird das Ihnen wahrscheinlich nicht helfen, denn ich habe schon mal probiert beides auf einen anderen Rechner zu setzen, aber dann funktioniert nichts mehr weil er die Backend nicht mehr findet.
Hallo,
ok, mail mir BE unf FE an die bekannte Abdresse. Die Verknüpfungen bekomm ich schon hin...
Hallo, Ich habe es an die private Email von Ihnen gemailt. Einmal FE / BE / Excel Datei
Erklärung steht in der Mail.
Danke
Hi,
Jetzt klappts nachdem ich es geändert habe, jetzt bleibt ein letzter kleiner Wunsch. Es gibt Leute die haben keinen Schichtplan, und wenn ich ALLE auswähle dann werden die mitgedruckt. Wo kann ich da noch ein Kriterium einsetzen dass nur die gedruckt werden deren ROULEMENT Feld nicht LEER ist? Oder ich sage mal so, es wäre besser er würde sogar die Abfrage ausfragen, denn auch die Mitarbeiter mit TMxx müssten rausgefiltert werden.
Mfg
bspw so, aber das löst einen Fehler aus:
Private Sub cmbSPNR_AfterUpdate()
Dim strSQL As String
If Me!cmbSPNR = 0 Then
strSQL = "select * from tbl_Uebersicht order by [Roulement] WHERE Roulement >=22 , [Nomcomplet]"
Else
strSQL = "select * from tbl_Uebersicht where Roulement = " & Me!cmbSPNR & " order by [Roulement], [Nomcomplet]"
End If
Me!frm_listeagents_tscopie.Form.RecordSource = strSQL
End Sub
Hallo,
vermutlich:
Private Sub cmbSPNR_AfterUpdate()
Dim strSQL As String
If IsNull(Me!cmbSPNR) Then
strSQL = "select * from tbl_Uebersicht order by [Roulement] WHERE Roulement >=22" 'warum hier 22 ??
Else
strSQL = "select * from tbl_Uebersicht where Roulement = " & Me!cmbSPNR & " order by [Roulement]"
End If
Me!frm_listeagents_tscopie.Form.RecordSource = strSQL
End Sub
"TMxx" werden doch sowieso nicht gedruckt, solange dieser Prefix nicht auch in tblRoulement mit vorhanden ist...
Ja Sie haben Recht das war ein Gedankenfehler von mir er überprüft ja das Prefix TS stimmt. Die 22 ist die ID aus der Tabelle Roulement, da steht 22 für TM10 23 für TM11 usw.
Ich bekomme nämlich einen Fehler wenn ich "ALLE" drucken will und zwar:
3075 Syntaxfehler (fehlender Operator) in Abfrageausdruck 'ID='
ich dachte das wäre darauf zurückzuführen denn er macht den Fehler nur unter "ALLE"
Hallo,
ok, habe nochmal die DB angesehen. Dort wird "Alle" mit "0" dargestellt, so dass es so (wie vorher) lauten muss:
If Me!cmbSPNR = 0 Then
strSQL = "select * from tbl_Uebersicht order by [Roulement] WHERE Roulement >=22"
Else
strSQL = "select * from tbl_Uebersicht where Roulement = " & Me!cmbSPNR & " order by [Roulement]"
End If
PS: sehe gerade, dass die Einträge in tbl_roulement nicht korrekt sind und so laten müssen:
ID Roulement Prefix
22 10 TM
23 11 TM
24 12 TM
so denn auch diese Bezeichnungen als Excel-Sheet-Namen existieren und gedruckt werden sollen.
In der DB zeigt diese Tabelle die Benamsungen der Excel-Sheets, die gedruckt werden dürfen. Ist der Name eines Excel-Sheet nicht in der Tabelle aufgeführt, wird das entspr. Sheet nicht gedruckt. Das Kriterium ">=22" kann entfallen (u. a. auch deshalb, weil es "falsch herum" ist und eigentlich "<22" heißen müsste, wenn alle Roulements mit ID <22 gedruckt werden sollen.
Wenn aber in tblRoulement auch Einträge vorhanden sein sollen, die grundsätzlich nicht für einen Druck des entspr. Excelsheets vorgesehen sind, erfordert das ein weiteres Feld "druckbar" , mit dem eben dies gesteuert wird.
Das ist ja dann so wie ich es anfangs auch gemacht habe, nur dass ich die Fehlermeldung da bekomme. Oder liegt das an der 2. Ordung vom [Nomcomplet]?
Hallo,
Sorry ein bisschen Verspätung aber lag gestern flach, es ist so wie sie es sagen: Wenn ich ALLE auswähle müssten alle Sheets ausgedruckt werden. Da die Tabelle Roulement aber auch in anderen Formularen genutzt wird, ist es auch wichtig dort Einträge einzutragen wie z.B. TM10 TM11 usw. Diese gelten nämlich für Lehrlinge, die haben keinen festen Schichtplan (Roulement). Die haben daher keine Sheets, und müssen vom Druck ignoriert werden. An sich müsste man festlegen können: Wenn Prefix nicht gleich null ist, dann sollte er auf das entsprechende Excel Sheet zurückgreifen. Ist das Prefix dann Null, dann müsste dies vom Druck ausgeschlossen werden. Somit könnte man die Prefix Spalte gleichzeitig nutzen um die Option "Drucken JA/NEIN" zu nutzen.
Mfg
Ich habe es jetzt mal so gelöst. Ich habe eine Abfrage erstellt mit den Spalten Nomcomplet, Matricule, Roulement, Case. Ich habe hier bei Roulement die Kriterie eingebaut ; <22
Im SQL Code habe ich dann die Abfrage genommen:
If Me!cmbSPNR = 0 Then
strSQL = "select * from qry_tscopie order by [Roulement], [Nomcomplet]"
Else
strSQL = "select * from qry_tscopie where Roulement = " & Me!cmbSPNR & " order by [Roulement], [Nomcomplet]"
End If
Demnach scheint es nun zu klappen mal abwarten :)