Zum Inhalt springen

Axelander

Mitglieder
  • Gesamte Inhalte

    17
  • Benutzer seit

  • Letzter Besuch

  1. Ich habe schon eine temporäre Abfrage drunter, die kann ich auch wieder löschen. Mein Problem ist, dass ich mir die Daten für den Report von verschiedenen Servern ziehe, d.h. mit einem Recordset bekomme ich das schon nicht mehr hin. Bisher hole ich mir im Code die Daten vom SQL - Server als Recordset und mache daraus die Temp-Table. Dann ersetzte ich in meiner Vorlagenabfrage die Vorlagentabelle durch die richtige Temp-Table und nehme diese neue Abfrage als Datengrundlage für meinen Bericht. Die Temp-Table und die Temp-Abfrage brauche ich, weil das ganze auf einem Server mit 15-20 Benutzern läuft, die sich eine gemeinsame Datenbank teilen. Jeden eine eigene Version hinzustellen ist leider möglich. Gruß Alex
  2. Hallo, ich erstelle mir in einem Access 2000 Report eine Temp-Table auf der der Bericht basiert. Diese möchte ich gerne irgendwann wieder löschen, am liebsten beim Schließen des Berichtes. Nur leider ist die Tabelle zu diesem Zeitpunkt noch durch den Bericht gesperrt. Die Datengrundlage vom Bericht darf ich auch nicht mehr ändern, da der Bericht ja schon gedruckt wird. Hat jemand eine Idee? Gruß Alex
  3. Hallo Leute, ich habe folgendes Problem. Ich möchte einen Access - Bericht auf verschiedenen Druckern mit verschiedenen Fächern und auch mit Duplex ein / aus drucken. So weit so gut. In der FAQ wird vorgeschlagen, den Bericht im Design - Modus zu öffnen und die DefModeStructur zu ändern. Das funktioniert aber bei mir nicht, da mehrere Benutzer in der gleichen Datenbank arbeiten und ich somit meine Änderungen nicht speichern kann. Die zweite Möglichkeit wäre den Standarddrucker andauernd umzusetzen. Dazu müsste ich aber jeden Drucker mit jedem Ein-/Ausgabefach einmal normal und einmal als Duplex anlegen. Das wären dann so an die 80 Drucker. Ist dann schon ein wenig unübersichtlich und mein Admin killt mich wenn ich ihm frage, ob er mir schnell mal 80 Drucker anlegt. Gibt es denn keine Möglichkeit, beim Druck des Berichts irgendwie temporär die Druckeinstellungen zu ändern? Gruß Alex
  4. Also Punkt 1 habe ich jetzt schon gefunden: oWord.Tables(Index).Rows(Index).Delete Dann wird die Zeile zwar gelöscht, aber das ist ja auch nicht so schlimm. Zu Punkt 2: Ich habe mein BMP als OLE - Objekt in der Datenbank. Das kann ich auch einer Textmarke zuweisen, allerdings stehen dann an dieser Stelle nur Sonderzeichen. Wie kann ich Word mitteilen, dass hier später mal ein BMP hin soll? Gruß Alex
  5. Hallo, vielen Dank für den Link, funktioniert schon ganz gut. Aber zwei Fragen habe ich noch: 1. kann ich von Access aus auch Abschnitte oder Tabellen oder Felder ein- bzw. ausblenden? 2. Kann ich auch OLE - Objekte bzw. Bilder / Logo´s einfügen? Gruß Alex
  6. Hallo Leute, ich habe ein kleines Problem. Die Access - Reports bieten mir zu wenig Möglichkeiten beim Design von Reports (z.B. Blocksatz). Deshalb würde ich gerne Word zum drucken verwenden. Ich habe mir das so vorgestellt, dass ich einen Designvorlage in Word erstelle. Hier würde ich dann gerne Platzhalter oder Variablen für den variablen Teil einsetzen und diese dann von Access aus befüllen. Hat so was schon mal jemand gemacht? Was muss ich in der Word - Datei machen, um Variablen oder Platzhalter verwenden zu können? Und wie kann ich diese dann von Access aus befüllen? Gruß Alex
  7. Hallo, ich habe folgendes Problem. Ich habe ein ungebundenes Formular, welches bei Aktivierung die Daten aus der Tabelle liest und dann in die Bildschirmmaske schreibt. Von diesem Formular aus rufe ich dann ein Popup auf, welches die Daten in der Tabelle ändert. Beim schließen des Popup´s soll jetzt natürlich das Hauptformular verwendet werden, aber es wird einfach kein Ereignis ausgelöst. Wenn ich kein Popup verwende funktioniert es bei Aktivierung. Kann ich Access irgendwie dazu bringen beim verlassen des Popups ein Ereignis im Hauptformular auszulösen? Gruß Alex
  8. Klar, unter DAO gibt es die auch, für DAO verwende ich aber die obere Methode, für ADO kenne ich nur die untere. Gruß Alex
  9. Wenn es ein kleines Bild ist, kannst du es ja auf einen flachen Button legen. Gruß Alex
  10. @0x51: sorry, dass ich dich enttäuschen muss, aber % steht für beliebig viele Zeichen, das ? steht für ein Zeichen. @Commander_com: Wenn du ein ungebundenes Formular hast, dann hast du ohne VBA sowieso keine Chance. Ich nehme mal an, dass er Suchen soll, sobald du auf einen Button drückst. Hier mal ein Vorschlag für eine Kundensuche mit mehreren Suchoptionen: Private Sub btn_suchen_Click() Dim rst As DAO.Recordset Dim SQL As String ' Allgemeine Festlegungen If g_db Is Nothing Then Set g_db = CurrentDb() SQL = " SELECT K_Name. K_Vorname, K_Strasse FROM tbl_Kundendaten WHERE 1=1" if vartype(me.F_Name) <> vbnull then sql = sql & " AND K_Name LIKE '*" & me.f_name & "*'" end if if vartype(me.F_Vorname) <> vbnull then sql = sql & " AND K_Vorname LIKE '*" & me.f_vorname & "*'" end if if vartype(me.F_strasse) <> vbnull then sql = sql & " AND K_strasse LIKE '*" & me.f_strasse & "*'" end if set rst = db.openrecordset(sql) if rst.eof then msgbox "keine daten gefunden" else rst.movelast if rst.recordcount = 1 then docmd.openform "frm_Kunden_Anzeigen" else docmd.openform "frm_suchergebnis", openargs:=sql endif endif rst.close docmd.close acForm, Me.Name End Sub Erklärung: WHERE 1=1 erspart dir die Prüfung beim zusammensetzten vom SQL - String, ob du jetzt schon ein Where drin hast oder nicht Bei keinem gefundenen Kunden -> Fehlermeldung bei einem gefundenen Kunden -> Kunden dirket anzeigen bei mehreren gefundenden Kunden -> Auswahlformular öffnen. Gruß Alex
  11. Hallo Leute, ich habe hier eine relativ große Access - Datenbank, komplett mit ungebundenen Formularen. Welche Methode ist jetzt die bessere für Inserts? 1. DAO: dim sql as string dim db as database set db = currentdb() sql = "INSERT INTO tbl_Kundendaten (K_Name, K_Vorname) VALUES(" sql = sql & " '" & me.f_name & "'" sql = sql & ",'" & me.f_Vorname & "'" sql = sql & ");" db.execute(sql) 2. ADO: dim rst as adodb.recordset dim db as new adodb.connection set db = currentproject.connection rst.open "tbl_Kundendaten", db, adopenkeyset, adLockOptimistic rst.addNew rst![K_Name] = me.f_name rst![K_Vorname] = me.f_name rst.update rst.close Welche Variante ist die schnellere, speziell bei vielen Inserts/Updates? Welche macht in der Praxis weniger Probleme? Gruß Alex
  12. Hallo, ich glaube ich habe mich da ein wenig falsch ausgedrückt. Das Problem entsteht nicht bei der Entwicklung, sondern während der Laufzeit. Ich werfe z.B. einen Seriendruck mitmehreren Berichten aus eine VBA - Schleife an. for i = 1 to 1000 docmd.openreport "Bericht1" docmd.openreport "Bericht2" docmd.openreport "Bericht3" next i Access nimmt sich jetzt immer mehr Arbeitsspeicher und gibt diesen auch nicht wieder her, bis der Anwender die Datenbank schließt. Systemumgebung: Windows 2000 Terminalserver, 1 Anwendungsdatenbank, 1 Daten - Datenbank, beide lokal auf dem Terminalserver. Gruß Alex
  13. Kann ich damit auch Fächer und Duplex steuern? Wie Funktioniert der denn genau? Gruß Alex
  14. Hallo Leute, ich möchte gerne von Access aus ein Word - Dokument drucken. So weit ganz gut, aber bisher kann ich nur auf dem Standarddrucker drucken. Ich möchte aber auch gezielt Drucker, Ein-/Ausgabefächer und den Duplexdruck ansteuern können. Hat jemand eine Idee? Hier mal meine Funktion: Public Function Word_Datei_Drucken(Datei As String) Dim oWordApp As Word.Application Dim oWord As Word.Document Set oWordApp = New Word.Application oWordApp.Visible = False oWordApp.ActivePrinter = "Xerox Doc Centre 460" Set oWord = oWordApp.Documents.Add(Datei) oWord.PrintOut False oWordApp.Quit End Function
  15. Hallo Leute, ich habe hier bei mir ein kleines Problem mit Access 2000. Und zwar wenn ich mehrmals hintereinander einen Bericht aufrufen muss (so ca. 500 mal), dann nimmt sich mein Access - Task immer mehr Speicher und gibt ihn auch nicht wieder her, bis ich die Anwendung einmal geschlossen und wieder geöffnet habe. Kennt jemand das Problem? Kann ich Access irgendwie dazu zwingen den Speicher wieder frei zu geben? Gruß Alex

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...