Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1004to1008
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Programm starten, wenn Enter-Taste gedrück wird

Programm starten, wenn Enter-Taste gedrück wird
06.09.2008 15:46:08
Matthias
Hallo!
Ich habe folgendes vor: Beruflich muss ich oft mit großen Listen arbeiten, in denen Zeichnungsnummer stehen. Wenn der Cursor auf irgendeiner dieser Zellen steht, soll bei Druck auf die Enter-Taste ein Programm gestartet werden, wobei die Zahl in dieser Zelle dem Programm als Parameter übergeben werden soll. Den Programmstart habe ich schon hinbekommen, allerdings weiß ich nicht wie ich den Parameter übergebe. Ich hoffe das Problem ist verständlich.
Hier die Datei mit meinem aktuellen Stand: https://www.herber.de/bbs/user/55223.xls
Gruß und vielen Dank schon mal
Matthias

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Programm starten, wenn Enter-Taste gedrück wird
06.09.2008 15:54:20
Ramses
Hallo
Welches Programm ?
Kann das Programm überhaupt Startparameter übernehmen ?
Lass das mit dem OnKey lieber weg, verwende stattdessen

Private Sub Worksheet_Change(ByVal Target As Range)
Anwendung_starten Target.Value
End Sub


im Klassenmodul deiner Tabelle
und ändere deinen Code in
Sub Anwendung_starten(parVar As Variant)
Dim Programmstart
Programmstart = Shell("C:\WINDOWS\system32\calc.exe" & parVar)
End Sub


Gruss Rainer

AW: Programm starten, wenn Enter-Taste gedrück wir
06.09.2008 16:05:00
Matthias
Hi,
das Programm heißt Zeichnungssucher.exe und ist firmenintern, daher kann ich es nicht herausgeben. Es kann die Zeichnungsnummer als Parameter übernehmen und sucht dann in diversen Ordnern nach dwg-Dateien mit dieser Zeichnungsnummer. Momentan ist es so, dass man immer per copy&paste die Zeichnungsnummer aus der Excel-Liste in das Programm einfügen muss...
Testweise hatte ich in der Datei einfach mal calc.exe als Programm gewählt, vielleicht fällt euch noch etwas Besseres ein.
Frage zu Deinem Code: Wird dieser Code auch ausgeführt, wenn Enter gedrückt wird? Das ist nämlich gerade der "Komfort", den ich haben möchte.
Matthias
Anzeige
AW: Programm starten, wenn Enter-Taste gedrück wir
06.09.2008 16:12:00
Walter
Hi,
wenn du die Funktion der Entertaste derart verbiegst ist keine vernünftige Arbeit mehr in Excel möglich.
Es gibt doch genügend andere Tasten, die du dafür verwenden kannst.
mfg Walter
AW: Programm starten, wenn Enter-Taste gedrück wir
06.09.2008 16:26:15
Matthias
Hallo Waler,
ganz unrecht hast Du da nicht. Es ist aber hier nur die Enter-Taste, nicht die Return-Taste. Evtl. überlege ich mir noch eine andere Taste, wäre ja kein großer Aufwand das noch zu ändern. Nur das mit dem Parameter fehlt mir halt noch...
Matthias
AW: Programm starten, wenn Enter-Taste gedrück wir
06.09.2008 18:19:55
Matthias
OK, habe mich für Shift + Eingabetaste entschieden, ich denke dann sollte es keine Probleme geben.
Hier gibt (wild erfunden) mal ein kleines Programm, an das ein Parameter übergeben werden kann: http://www.nilsobermiller.de/download/StartDelay.zip Also z.B. "StartDelay.EXE c:\windows\notepad.exe 20" würde in 20 Sekunden den Windows Editor starten. Wie bekommt man es nun hin, dass die Zahl in der Zelle (z.B. 20) dem Programm als Parameter übergeben wird?
Gruß Matthias
Anzeige
AW: Programm starten, wenn Enter-Taste gedrück wir
06.09.2008 19:21:00
Ramses
Hallo
"...dass die Zahl in der Zelle (z.B. 20) dem Programm als Parameter übergeben wird?..."
Wenn du das probieren würdest, was man dir vorschlägt, dann müsstest du nicht solange warten.
Gruss Rainer
AW: Programm starten, wenn Enter-Taste gedrück wir
06.09.2008 19:28:00
Matthias
Hi,
hier mal mein aktueller Stand: https://www.herber.de/bbs/user/55224.xls
Es fehlt nur noch der Teil des Codes, der dem Programm StartDelay.exe den Wert der aktuellen Zelle als Parameter übergibt. Weiß hier wirklich niemand Rat? Irgendetwas mit ActiveCell.Value ?
mfg Matthias
P.S.: Bei mir liegt das o.g. Programm StartDelay.exe (nur zum Testen) unter C:/
Anzeige
Warum...
06.09.2008 19:38:02
Ramses
Hallo
"...den Wert der aktuellen Zelle als Parameter übergibt...."
Nun reichts mir ehrlich gesagt,... willst du nicht oder kannst du nicht.
Das habe ich bereits in meinem ersten Beitrag geschrieben.

Private Sub Worksheet_Change(ByVal Target As Range)
Anwendung_starten Target.Value
End Sub


Sub Anwendung_starten(parVar As Variant)
Dim Programmstart
Programmstart = Shell("C:\WINDOWS\system32\calc.exe" & parVar)
End Sub


Wenn du es nicht verstehst, dann frage gezielt nach oder lass es bleiben.
Ich betrachte diesen Beitrag für mich als erledigt.
Gruss Rainer

Anzeige
AW: Warum...
07.09.2008 11:41:27
Matthias
Guten Morgen,
warum gleich so empfindlich? Ich habe Deinen Code durchaus probiert, bekomme ich es mit meinen VBA-Kenntnissen damit nicht hin! Müssen beide Code-Teile in ein Modul kopiert werden, oder eines in ein Modul und das andere ins Tabellenblatt? Auch kann ich nicht erkennen, wo in dem Code der aktuelle Zellwert übergeben wird oder wie das Makro beim entsprechenden Tastendruck (z.B. Shift und Enter) gestartet werden soll.
Übrigens hatte ich Deinen letzten Beitrag noch gar nicht gelesen, als ich meinen letzten geschrieben habe...
Gruß Matthias
AW: Warum...
07.09.2008 13:42:00
Ramses
Hallo
"...warum gleich so empfindlich?.."
Weil du in jedem Beitrag das gleich fragst ohne die Vorschläge, wie du selbst sagst, zu verstehen.
Wenn jemand seine EXCEL Umgebung so umbiegt, dass Tastatureingaben verbogen werden und was anderes tun als sonst erwartet,... dann gehe ich davon aus, dass ein gewisses Grundverständnis da ist
"..Ich habe Deinen Code durchaus probiert,..."
Hast du nicht
"...bekomme ich es mit meinen VBA-Kenntnissen damit nicht hin! .."
Es ist eine Schritt für Schritt Anleitung in meinem ersten beitrag
"...Auch kann ich nicht erkennen..."
Musst du auch nicht, wenn du keine Ahnung hast. Mach es einfach.
Wenn du es verstehen willst, dann gehe mit F8 im Einzelschritt durch den Code
"...oder wie das Makro beim entsprechenden Tastendruck ..:"
Du liest die Beiträge nicht,... denn das ist gar nicht nötig wie ich schon geschrieben habe
"...Übrigens hatte ich Deinen letzten Beitrag noch gar nicht gelesen,..."
War auch nicht nötig,... da es bereits im ersten Beitrag gestanden hat
Gruss Rainer
Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige