Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst In Access mit VBA ein Programm aufrufen und DB-Eintrag als Parameter eintragen

Mitglied: pernox

pernox (Level 1) - Jetzt verbinden

13.11.2007, aktualisiert 14.11.2007, 16626 Aufrufe, 2 Kommentare

Liebe Administrator.de-Gemeinde,

ich möchste aus einer Access-Anwendung heraus ein Programm zur Mikro-Aufnahme starten.
Dieses Aufnahme-Programm (harddiskogg) hat eine grafische Oberfläche, ich möchte dem Benutzer diese aber ersparen, er soll in Access nur jeweils einen Button für Start und Stop zu sehen bekommen.

Das ist soweit noch kein Problem (außer dass das Programm leider nicht völlig ohne Oberfläche startet).

Im Moment sieht der Code für den Startbutton so aus:
stAppName = "C:\Program Files\hdogg\Harddisk.exe -record -filename test.mp3"
Call Shell(stAppName, 1)

Das Programm startet also sofort mit der Aufnahme, die dann in der Datei "test.mp3" gespeichert wird. Das funktioniert auch.

Mit dem Parameter "filename" möchte ich nun aber keinen festen Wert, sondern einen Wert aus einer Access-Tabelle auslesen und die Datei mit einer bestimmten Benutzer-Nummer versehen, also so etwas wie "63524762.mp3"
Fortlaufende Nummerierung (bietet das Programm an) bringt mir nichts.

Hat jemand einen Hinweis, ob das überhaupt möglich ist und wie ich es anstelle?

Vielen Dank
Pernox
Mitglied: RDiller
13.11.2007 um 17:02 Uhr
Hi Pernox,

ich nehme mal an, der User muß sich erst mal über eine Anmeldemaske in das Programm einloggen, so dass Du eine Usertabelle hast, z.B.:

Username UserID
Pernox 63524762


Über den Button START rufst Du dann die folgende Prozedur auf:
Den Usernamen kannst Du ja irgendwo auf deinem Formular Hinterlegen und übergeben.
i.e.

Public Sub Start_click()
Dim Start_prg
Start_prg = Start_Programm(me.username)
end sub

Public Function Start_Program(Username)
Dim rstemp As Recordset
Dim sqls, UserID, Path, Filename As String
Path = "C:\Records\"
'Schauen, ob der Username in der Tabelle existiert
sqls = "SELECT User.Username, User.UserID " _
& " FROM [User] " _
& " WHERE User.Username='" & Username & "';"
Set rstemp = CurrentDb.OpenRecordset(sqls)
If rstemp.RecordCount = 0 Then ' Username ist nicht in dere Tabelle User
MsgBox "Username is nicht bekannt!", vbCritical, "Username Check"
Exit Sub
End If
'UserID auslesen
UserID = rstemp.Fields("UserID")
rstemp.Close 'Tabelle schließen
Set rstmp = Nothing ' Objekt entladen
Filename = UserID & ".mp3"

'Existiert die Datei schon?
FileExists = objFso.FileExists(Path & Filename)
If FileExists Then 'Z.B. mit einem Unterstrich und fortlaufender Nummer versehen; Natürlich schauen, ob die Datei schon existiert
For x = 1 To 999
Filename = UserID & "_" & x & ".mp3"
FileExists = objFso.FileExists(Path & Filename)
If FileExists Then
Exit For
End If
Next x
End If
'Dein Programm Aufrufen
stAppName = "C:\Program Files\hdogg\Harddisk.exe -record -filename " & Path & Filename
Call Shell(stAppName, 1)
End Function


Gruß

Ralf
Bitte warten ..
Mitglied: pernox
14.11.2007 um 17:55 Uhr
Hallo Ralf,

vielen vielen Dank. Es funktioniert.

Nun habe ich doch noch etwas VBA gelernt, wer hätte das gedacht!

Den Check, ob die Datei schon funktioniert, konnte ich weglassen. Das Aufnahme-Programm bietet das schon mit an.

Viele Grüße
Pernox
Bitte warten ..
Ähnliche Inhalte
VB for Applications

Per VBA oder Makro Nummerierung und Name aus DB eintragen

Frage von evolutionVB for Applications

Hallo, ich habe folgendes Anliegen. Ich suche eine Lösung um in Word und Excel-Dokumenten automatisch in der Fußzeile eine ...

Windows 7

Einträge

Frage von stonesteinWindows 717 Kommentare

Wieviele Berechtigungs Administratoren muß ich zulassen in Einträge wenn nur ein PC Administrator vorhanden ist ,jetzt stehen gerade 5x ...

Microsoft Office

Access Unterformular über Eintrag vom Kombinationsfeld öffnen

gelöst Frage von Luna01Microsoft Office3 Kommentare

Guten Abend! :-) Ich möchte gerne über ein ungebundenes Kombinationsfeld ein Unterformular auswählen können und dieses sollte sich dann ...

Windows 7

VBA in Excel, Einträge von diversen Zellen löschen

gelöst Frage von 116408Windows 72 Kommentare

Hallo Bin neu im Forum und habe gleich eine (für mich) happige Aufgabe :-) Ich habe ein Aufnahmeblatt geschaffen, ...

Neue Wissensbeiträge
Humor (lol)
Meine Variante der DSGVO
Tipp von Henere vor 1 TagHumor (lol)2 Kommentare

Datenschutzerklärung Jede gute Website braucht eine Datenschutzerklärung? Ok, dann machen Sie sich auf etwas gefasst. Präambel Artikel 12 der ...

Administrator.de Feedback

Entwicklertagebuch: Datenschutzerklärung nach DS-GVO

Information von admtech vor 1 TagAdministrator.de Feedback

Hallo Administrator User, Wir respektieren eure Privatsphäre und möchten euch daher auf die Möglichkeiten für den Umgang mit euren ...

Voice over IP

Rufnummernblock aufbrechen nun möglich bei DTAG

Tipp von Datenreise vor 1 TagVoice over IP

Bei der Telekom ist es seit einigen Tagen laut Aussage der Geschäftskunden-Hotline möglich, eine Rufnummernübernahme auch dann durchzuführen, wenn ...

Netzwerke
Riesiges Botnetz in Deutschland
Tipp von FFSephiroth vor 1 TagNetzwerke1 Kommentar

Überprüft mal eure Router und NAS

Heiß diskutierte Inhalte
Voice over IP
VOIP: Lösungen für Notruf?
Frage von MimemmmVoice over IP26 Kommentare

Hey Welche Möglichkeiten hat man eigentlich noch bei VOIP um zuverlässige Notrufe zu ermöglichen? Ein aufgeladenes Handy habe ist ...

Windows Server
Fragwürdige GPO Fehler im Syslog
gelöst Frage von Ex0r2k16Windows Server13 Kommentare

Hallo! Ich kriege bei manchen (oder sogar allen? -prüfe noch) Clients folgenden Fehler bei mehreren GPOs (aber nicht bei ...

Windows Server
DHCP und Regeln und Filter
Frage von OlliPWSWindows Server10 Kommentare

Guten Tag, wir haben folgende Problematik: Wir haben diverse ca. 130 Avaya VoIP Telefone, diese sollen per DHCP automatisch ...

Windows Server
Nach KB4103718 RDP auf Windows 2003 Server
gelöst Frage von Bl0ckS1z3Windows Server9 Kommentare

Hallo Admins, im KB4103718 ist ja der Patch für den RDP-Server und Client enthalten. Wir haben aber noch Windows ...