vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Windows API
Re: keybd_event Anwendungen steuern 
Autor: SCHAUAN
Datum: 07.04.05 17:12

Hallo Martoeng,
ich möchte z.B. eine Grafik aus einem Excel-Sheet in Paint spiegeln. Das bekomme ich anders nicht gebacken. Den Test-Code für Notepad habe ich jetzt soweit, dass er läuft, mit folgenden Änderungen zur letzten Version
- in jedem Makro mit keybd.. am Ende DoEvents
- im Schließen-Makro noch die Taste n - wegen der Speichern-Abfrage
- ein Extra - Makro für das Kopieren im Notepad - zusätzlich alles markieren, unter NT per Menübefehl, für XP muß noch STRG-A programmiert werden
- und vor dem Einfügen in Excel im Hauptmakro (bearbeiten4) eine kurze Wartezeit sonst kommen die vorher kopierten Daten und nicht die in Notepad kopierten.

Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, _
ByVal bScan As Byte, ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)

Const KEYEVENTF_KEYUP = &H2
Public Ergebnis

Sub bearbeiten4()
copy_excel4 'in Excel kopieren
oeffne4_NT 'Notepad öffnen
paste_notepad4 'in Notepad einfügen
replace_notepad4_NT 'in Notepad ersetzen
copy_notepad4 'in Notepad kopieren
Application.Wait TimeSerial(Hour(Now()), Minute(Now()), Second(Now()) + 2)
schliesse4 'Notepad schliessen
paste_notepad4 'in Excel einfügen - Tastenkombi Einfügen in Excel = Notepad
End Sub
Sub copy_excel4()
keybd_event vbKeyControl, 0, 0, 0 'STRG-C für Kopieren,
keybd_event vbKeyC, 0, 0, 0
keybd_event vbKeyC, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyControl, 0, KEYEVENTF_KEYUP, 0
DoEvents
End Sub
Sub copy_notepad4()
keybd_event vbKeyControl, 0, 0, 0 'STRG-A-C für Markieren und Kopieren,
keybd_event vbKeyA, 0, 0, 0
keybd_event vbKeyA, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyC, 0, 0, 0
keybd_event vbKeyC, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyControl, 0, KEYEVENTF_KEYUP, 0
DoEvents
End Sub
Sub paste_notepad4()
keybd_event vbKeyControl, 0, 0, 0 'STRG-V für Einfügen
keybd_event vbKeyV, 0, 0, 0
keybd_event vbKeyV, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyControl, 0, KEYEVENTF_KEYUP, 0
End Sub
Sub replace_notepad4_NT()
keybd_event vbKeyMenu, 0, 0, 0
keybd_event vbKeyS, 0, 0, 0 'Alt-S für Suchen - in XP Alt-H !
keybd_event vbKeyS, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyMenu, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyE, 0, 0, 0 'E für Ersetzen
keybd_event vbKeyE, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyC, 0, 0, 0 'kleines c, für großes c vorher shift
keybd_event vbKeyC, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyTab, 0, 0, 0
keybd_event vbKeyTab, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyA, 0, 0, 0 'kleines a, für großes a vorher shift
keybd_event vbKeyA, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyMenu, 0, 0, 0
keybd_event vbKeyL, 0, 0, 0 'Alt-L für alles ersetzen
keybd_event vbKeyL, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyF4, 0, 0, 0 'Alt-F4 für Ersetzen-Fenster schließen
keybd_event vbKeyF4, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyMenu, 0, KEYEVENTF_KEYUP, 0
DoEvents
End Sub
Sub oeffne4_NT()
Ergebnis = Shell("C:\WINnt\notepad.EXE", 3)
End Sub
Sub oeffne4_XP()
Ergebnis = Shell("C:\WINDOWS\notepad.EXE", 3)
End Sub
Sub schliesse4()
keybd_event vbKeyMenu, 0, 0, 0
keybd_event vbKeyF4, 0, 0, 0 'Alt-F4 für Fenster schließen
keybd_event vbKeyF4, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyMenu, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyN, 0, 0, 0 'N für nicht Speichern
keybd_event vbKeyN, 0, KEYEVENTF_KEYUP, 0
'Close Ergebnis
DoEvents
End Sub
Sub replace_notepad4_XP()
keybd_event vbKeyControl, 0, 0, 0 'Alt-H für Bearbeiten
keybd_event vbKeyH, 0, 0, 0
keybd_event vbKeyH, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyControl, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyC, 0, 0, 0 'kleines c, für großes c vorher shift betätigen
keybd_event vbKeyC, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyTab, 0, 0, 0
keybd_event vbKeyTab, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyA, 0, 0, 0 'kleines a, für großes a vorher shift betätigen
keybd_event vbKeyA, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyMenu, 0, 0, 0
keybd_event vbKeyL, 0, 0, 0 'Alt-L für alles ersetzen
keybd_event vbKeyL, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyF4, 0, 0, 0 'Alt-F4 für Ersetzen-Fenster schließen
keybd_event vbKeyF4, 0, KEYEVENTF_KEYUP, 0
keybd_event vbKeyMenu, 0, KEYEVENTF_KEYUP, 0
DoEvents
End Sub

Gr??e, SchauAn

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
keybd_event Anwendungen steuern2.730SCHAUAN06.04.05 12:13
Re: keybd_event Anwendungen steuern1.165ModeratorMartoeng07.04.05 00:07
Re: keybd_event Anwendungen steuern1.999SCHAUAN07.04.05 07:26
Re: keybd_event Anwendungen steuern1.153ModeratorMartoeng07.04.05 10:32
Re: keybd_event Anwendungen steuern1.924SCHAUAN07.04.05 17:12
Re: keybd_event Anwendungen steuern1.122ModeratorMartoeng07.04.05 17:37
Re: keybd_event Anwendungen steuern1.081SCHAUAN07.04.05 17:42
Re: keybd_event Anwendungen steuern1.113ModeratorMartoeng08.04.05 00:13
Re: keybd_event Anwendungen steuern1.037SCHAUAN08.04.05 16:23
Re: keybd_event Anwendungen steuern1.235ModeratorMartoeng08.04.05 16:42

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel