collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 42
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 1
  • Punkt Benutzer Online:

* Forenstatistik

  • stats Mitglieder insgesamt: 14662
  • stats Beiträge insgesamt: 74468
  • stats Themen insgesamt: 10020
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 933

Autor Thema: Starter mit mehreren Funktionen  (Gelesen 130 mal)

Offline Carl

  • Access-Meister
  • ***
  • Beiträge: 552
Starter mit mehreren Funktionen
« am: Januar 14, 2020, 19:42:13 »
Hallo,

ich bin dabei, einen Starter für eine DB im FE/BE-Design zu basteln und habe Fehlermeldungen.  Und versuche mich schrittweise vor zu tasten. Beispielsweise öffnet der unten stehende Code eine accdb, aber die Zeile darunter öffnet keinen docx.

Shell SysCmd(acSysCmdAccessDir) & "MSaccess.exe """ & CurrentProject.Path & "\~Versionsgeschichte\Beispiel.accdb""", vbNormalFocus
Shell SysCmd(acSysCmdAccessDir) & "MSword.exe """ & CurrentProject.Path & "\~Versionsgeschichte\Beispiel.docx""", vbNormalFocus

Ich habe schon heraus gefunden, dass das irgend etwas mit der Installation zu tun haben könnte. Wie bekomme ich heraus, was anstelle von Shell SysCmd(acSysCmdAccessDir) & "MSword.exe " stehen muss?

--------------

Hiermit kopiere ich das FE in die Installation des Users.

FileCopy "N:\string\string\string\string\string\string\string\string\Vorlage.accdb", Application.CurrentProject.Path & "\~Unterordner\Starter.accdb"
[\code]

Nun möchte ich den Pfad aus einer Tabelle tbl1 beziehen, die das Feld Pfad im Datensatz mit ID=1 enthält. Wie kann man den Pfad aus der Tabelle beziehen? Oder soll man ein Feld in das Formular einfügen und sich darauf beziehen?

Carl
 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 24199
Re: Starter mit mehreren Funktionen
« Antwort #1 am: Januar 14, 2020, 19:59:46 »
Hallo,
auf
SysCmd(acSysCmdAccessDir)
kannst Du verzichten, solange das aufzurufende Programm in Windows registriert ist, was bei den Office-Programmen der Fall sein dürfte.

zudem heißt Word als Programm nicht MsWord.exe sondern WinWord.exe.


Shell  "MSaccess.exe """ & CurrentProject.Path & "\~Versionsgeschichte\Beispiel.accdb""", vbNormalFocus
Shell  "Winword.exe """ & CurrentProject.Path & "\~Versionsgeschichte\Beispiel.docx""", vbNormalFocus



Was ist das für ein (sinnlose)  Unterverzeichnis-Bandwurm und warum taucht die Tilde im Verzeichnisnamen auf? Hat das eine bestimmte Bewandtnis?

FileCopy "N:\string\string\string\string\string\string\string\string\Vorlage.accdb", Application.CurrentProject.Path & "\~Unterordner\Starter.accdb"

Offline Carl

  • Access-Meister
  • ***
  • Beiträge: 552
Re: Starter mit mehreren Funktionen
« Antwort #2 am: Januar 14, 2020, 20:15:24 »
Es klappt! Danke.

Der Bandwurm zeigt nur dass es lang ist. Die Tilde ist notwendig, damit das Verzeichnis in der Sortierung im Explorer "oben" steht und anders als handangelegte aussieht. Sie sonst keine Bedeutung.

Mal ne andere Frage:

Wenn ein Verzeichnis verschiedene Dateien enthält, zum Beispiel Kraut und Rüben. Wie kann man dann Acc anweisen, eine bestimmte Datei heraus zu suchen und an zu stoßen, die im DateiNamen eine bestimmte Zeichenfolge enthält, zum Beispiel "abc"? Wonach muss ich suchen, wenn ich so eine Funktion basteln möchte?


Carl
 

Offline Carl

  • Access-Meister
  • ***
  • Beiträge: 552
Re: Starter mit mehreren Funktionen
« Antwort #3 am: Januar 14, 2020, 20:25:33 »
Ich habe übungsweise versucht, die obige Funktion etwas auszubauen. Das Feld Pfad2 entstammt einer Tabelle, die vom User selbst über die Einstellungen editiert werden kann und enthält nur eine Zelle ID=1, nämlich den Dateinamen.

Dim strFN1 As String
strFN1 = Nz(Me!Pfad2, "")
If Dir(strFN1) <> "" Then
     FollowHyperlink CurrentProject.Path & strFN1
Else
    MsgBox "Der Pfad wurde nicht gefunden!", 64, "Geben Sie bei den Einstellungen einen korrekten Pfad an."
End If

Hier funktioniert die Zeile FollowHyperlink CurrentProject.Path & strFN1 nicht. Was ist da falsch?

Carl
 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 24199
Re: Starter mit mehreren Funktionen
« Antwort #4 am: Januar 14, 2020, 21:27:06 »
Hallo,

gib  mal CurrentProject.Path & strFN1 mit Debug.Print in das Direktfenster aus, dann siehst Du selber die Ursache.

Zitat
....eine bestimmte Datei heraus zu suchen und an zu stoßen, die im DateiNamen eine bestimmte Zeichenfolge enthält, zum Beispiel "abc"?

strDateiname = Dir("*abc*")

findet die erste Datei, die "abc" im Dateinamen enthält.

Offline Beaker s.a.

  • Access Guru
  • ****
  • Beiträge: 2336
Re: Starter mit mehreren Funktionen
« Antwort #5 am: Januar 15, 2020, 15:49:14 »
Hallo Carl,
Für Ordner-/Dateizugriffe gibt es das "FileSystemObject".
Das bietet etwas mehr Komfort als ein einfaches "Dir()"
gruss ekkehard
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.
 

 

Starter funktioniert nicht mehr, ohne dass sich erkennbar was geändert hat

Begonnen von CarlBoard Access Programmierung

Antworten: 1
Aufrufe: 740
Letzter Beitrag Juni 29, 2018, 07:48:26
von Lachtaube

Advertisment / Werbung - Amazon Affiliate Links