Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1868to1872
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
Vba für windows playe
16.02.2022 08:16:07
Jörn
Moin,
Ich habe den Windows Player in ein umfangreiches Excelblatt eingebunden und ich kann damit verschiedene Videosequenzen nacheinander starten. Ich muß allerdings immer vor dem Start des Makros die Playtaste „drücken“ und den Video Player auf Vollbildschirm einstellen. Ich suche eine Möglichkeit das Makro so zu erweitern, so dass ich damit Play und Pause sowie Vollbild und Normalbild steuern kann. Im Forum habe ich dafür keine Lösung gefunden. Es wäre toll, wenn jemand eine Lösung hätte
Gruß
Jörn

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Vba für windows playe
16.02.2022 08:57:10
udo
Hi Jörn,
stell doch mal deinen Code den du verwendest hier rein,
LG udo
AW: Vba für windows playe
16.02.2022 12:11:15
Jörn
Anbei das Makro. An den Anfang soll ein Befehl gestellt der die Playtaste des eingebetteteN Windows median Player betätigt und auf Vollansicht stellt. am Ende des Makros soll wieder die Normalansicht erscheinen. Das Makro tut was es tuen soll nur muß vorher per Maus die Playtaste betätigt werden
Gruß
Jörn

Sub Plalist()
' Plalist Makro
' Tastenkombination: Strg+Umschalt+T
Range("AF20:AF1080").Select
Selection.Copy
Range("AG20").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
ActiveWorkbook.Worksheets("Video").sort.SortFields.Clear
ActiveWorkbook.Worksheets("Video").sort.SortFields.Add2 Key:=Range("AG20"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortTextAsNumbers
With ActiveWorkbook.Worksheets("Video").sort
.SetRange Range("AG20:AG1080")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("AG20:AG54").Select
Selection.NumberFormat = "[h]:mm:ss"
Range("AG20").Select
Application.CutCopyMode = False
Selection.Copy
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Application.Wait Now + TimeSerial(0, 0, 30)
Range("AG21").Select
If ActiveCell.Offset(0, 0) = "" Then Exit Sub
Selection.Copy
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Application.Wait Now + TimeSerial(0, 0, 30)
Range("AG22").Select
Selection.Copy
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("AG23").Select
Selection.Copy
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Application.Wait Now + TimeSerial(0, 0, 30)
Range("AG24").Select
Selection.Copy
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("AG25").Select
Selection.Copy
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Application.Wait Now + TimeSerial(0, 0, 30)
Range("AG24").Select
Selection.Copy
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("AG25").Select
Selection.Copy
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("AG26").Select
Selection.Copy
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Application.Wait Now + TimeSerial(0, 0, 30)
End Sub

Anzeige
AW: Vba für windows playe
16.02.2022 13:01:23
udo
Hi Jörn,
ich komm zeitlich erst heut Abend dazu mal was hierzu beizutragen, ich hatte in der Vergangenheit
mal was Ähnliches in Verwendung, muss ich später mal suchen, glaub ich hab es noch, allerdings nicht bei mir gerade.
Ich stell die Frage einstweilen mal noch offen, ud würde dir wenn ichs finde heute Abend noch was dazu posten,
Uhrzeit ? , wie es mir reicht später ...
LG Udo
AW: Vba für windows playe
16.02.2022 15:33:09
Jörn
Hallo Udo, vielen Dank, ich hoffe, dass es eine Lösung gibt.
Lg
Jörn
AW: Vba für windows playe
17.02.2022 08:56:10
Jörn
Hallo liebe Experten,
Udo scheint leider nichts gefunden zu haben, trotzdem vielen Dank. Gibt es vielleicht noch jemand, der mir helfen kann?
LG
Jörn
Anzeige
AW: Vba für windows playe
17.02.2022 11:11:35
udo
Hallo Jörn,
entschuldige meine verspätete Antwort, hab gestern noch die Dateien durchgesucht, habe dann aber gesehen dass das auch nur simple Makros waren
die in einem in einer Zeile hinterlegtem Dateipfad ( Hyperlink in dem Fall ) folgten und sich dadurch der Standart zugewiesene Videoplayer dann öffnete.
Mehr war da leider nicht, du willst ja direkt aus Excel heraus steuern ... dazu fällt mir dann letztlich nur ein, es über die SendKeys Anweisungen dann zu steuern,
damit liese sich aus Excel heraus doch so einiges steuern.
Fullscreen hab ich allerdings noch kein Shortcut gefunden, aber Play & Pause ( mit Strg.+p oder Leertaste ) , beenden mit ALT+F4 ...
SendKeys Anweisungen findest du hier ...
https://www.herber.de/forum/archiv/140to144/141006_SendKeys_fuer_TAB_und_Entertaste.html
hoffe das hilft Dir dann schon mal ... ich setz deien Frage nochmal als offen
LG udo
Anzeige
Frage noch offen .owT.
17.02.2022 11:12:20
udo
...
AW: Frage noch offen .owT.
17.02.2022 12:44:41
Jörn
Hallo Udo,
Vielen Dank für deine Antwort und das du so nett warst, zu suchen.
Es muss doch eine Möglichkeit der Steuerung über VBA geben, ich hoffe noch immer.
LG
Jörn
AW: Frage noch offen .owT.
17.02.2022 19:20:46
Oberschlumpf
Hi,
und auf die Idee, mal eine Bsp-Datei mit Bsp-Daten und deinem Code, auch den Code, wie genau du den Win-Player bis jetzt "fernsteuerst", zu zeigen, bist du noch nicht gekommen?
Der von dir gezeigte Code zeigt nur, wie man Listen erstellt, verschiebt, sortiert, usw - zumindest ich hab bzgl Win-Player keinen Befehl gesehen (na ja, vllt auch übersehen...is ja nich wenig Code) - deswegen is Bsp-Datei mit allem zeigen noch immer ne gute Idee - finde ich.
Ciao
Thorsten
Anzeige
AW: Frage noch offen .owT.
18.02.2022 08:54:07
Jörn
Hallo Thorsten,
ich habe versucht eine Beispieldatei zu erstellen, aber dazu reichen meine Kenntnisse leider nicht aus. Bei der von mir jetzt verwendeten Lösung hat mir Nepumuk vor einem Jahr geholfen. Das VBA, welches ich eingestellt habe, ermittelt Zeitwerte, die in $a$1 kopiert werden und damit werden 30sec Videosequenzen abgespielt. (Zur Info es werden in einem Tennismatch die längsten Rallys ermittelt und als Videohighlights abgespielt)
Nach dem Start des Makros kann ich den MediaPlayer nicht mehr bedienen, daher suche ich die Möglichkeit Play oder zumindest Vollbild durch das VBA zu aktivieren.
Anbei das relevante VBA für den Player, das auf das Feld $a$1 zurückgreift.
Ich hoffe, dass ich das Problem jetzt klarer dargestellt habe, es wäre toll, wenn jemand eine Lösung findet.
LG
Jörn
Option Explicit
Private Declare PtrSafe Sub Sleep Lib "kernel32.dll" ( _
ByVal dwMilliseconds As Long)

Private Sub CommandButton1_Click()
Dim FName As Variant
FName = Application.GetOpenFilename(FileFilter:="Video Files, *.mp4; *.avi; *.mpeg; *.mts", _
Title:="Please select a Video File", MultiSelect:=False)
If FName  False Then
With WindowsMediaPlayer1
.Url = FName
.Controls.currentPosition = Cells(1, 1).Value * 86400 'Zelle anpassen !!!
End With
End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then _
WindowsMediaPlayer1.Controls.currentPosition = Cells(1, 1).Value * 86400
End Sub

Private Sub WindowsMediaPlayer1_PlayStateChange(ByVal NewState As Long)
If NewState = wmppsPlaying Then
Call Sleep(200)
With WindowsMediaPlayer1
.Top = 0
.Left = 805
.Height = 340
.Width = 600
End With
End If
End Sub

Anzeige
AW: Frage noch offen .owT.
19.02.2022 08:26:28
udo
Hallo Jörn,
ich hatte mir gerade ansatzweise versucht das evtl. mal kurz aufzubauen,
da sind aber noch einige Parameter offen, die sich mir so nicht erschließen.
Ohne Beispiel deinerseits wirds daher wohl nichts, falls du es doch noch schaffst eine abgespeckte Version
mit allen hierzu nötigen Codes zu posten, schau ich gern nochmal kurz drauf was mir einfiele
Aber so, sorry
LG udo
AW: Frage noch offen .owT.
19.02.2022 11:13:09
Jörn
Hallo Udo,
ich habe doch eine Beispieldatei hinbekommen.
Problemstellung:
Während das Makro läuft soll das Video auf Vollbild umgestellt werden, alternativ bei Start des Makros soll sofort Vollbild eingeschaltet sein.
LG Jörn
https://www.herber.de/bbs/user/151240.xlsm
Anzeige
AW: Frage noch offen .owT.
19.02.2022 17:02:58
udo
Grüss dich Jörn,
du verwendest also einen eingebetteten WMP, hmmm, sorry,
da hab ich nicht wirklich was beizutragen, ich hab eben mal noch in den Einstellungen des Players
es zumindest auf Fullscreen gesetzt, wird aber nicht dauerhaft übernommen.
ich dachte die ganze Zeit du willst den regulären MediaPlayer aus Excel heraus steuern,
hab ich dann wahrschl. falsch verstanden.
Hast du diesen Weg mal in Betracht gezogen ? Du könntest da auch etliche Kommandos aus Excel heraus aufrufen
über SendKeys ...
Strg+W stoppen
Strg+Shift+F Vorspulen
Strg+P Pause / Play `
F10 Mediathek
F11 Fullscreen
Strg+Shift+S Abspielgeschwindigkeit slow
ALT+1 mini Fenster
ALT+2 midi Fenster
ALT+3 max Fenster
Strg+S stop
Stgr+U Url Eingabe
Strg+o open
Strg+2 Player in Design Mode
Strg+3 WMP normal Mode
zwischen den einzelnen Anweisungen kannst du ja über Applcation.wait () entspr. Zeitfenster setzen etc.
Allerdings das du nur Sequenzen hierüber abspielen könntest ?
Weiters bin ich da mit meinem Latein auch am Ende, vielleicht hat noch Jemand eine bessere Idee oder kennt sich mit
eingebetteten WMP eher aus, daher setzte ich deinen Beitrag nochmal auf offen, drück dir die Daumen
LG udo
Anzeige
AW: Frage noch offen .owT.
19.02.2022 17:35:15
Jörn
Hallo Udo,
vielen Dank, dass du es versucht hast. Dein Vorschlag scheint leider nicht zu funktionieren. Für den MedienPlayer gibt es eine Objektliste mit der man den Player über VBA steuern kann. Man muss fullscreen = true setzen. Nur wie man dieses ins VBA einbaut, habe ich nirgends gefunden. Aber ich gebe die Hoffnung noch nicht auf. Wenn sich keiner melde, werde ich die Anfrage noch einmal neu stellen und gleich mit Beispieldatei.
Dir nochmal herzlichen Dank!
LG Jörn
AW: Frage noch offen .owT.
19.02.2022 21:52:24
udo
Grüss dich Jörn,
hab eben nochmal gegoogelt und etwas dazu gefunden ...
---------------------------------------------------------------------------------------------------
http://www.office-loesung.de/ftopic275272_0_0_asc.php
WindowsMediaPlayer1.Controls.Pause
WindowsMediaPlayer1.Controls.Stop
WindowsMediaPlayer1.Controls.Play
Play funktioniert aber nur dann, wenn über
WindowsMediaPlayer1.URL = "C:\DeinPfad"
----------------------------------------------------------------
https://www.excelforum.com/excel-programming-vba-macros/1331963-help-with-windows-media-player-controls.html
To play im using this macro:
Sheet1.WindowsMediaPlayer1.Controls.play
Sheet1.WindowsMediaPlayer1.Controls.currentPosition = Sheet1.Range("K5").Value 'this cell have the value in seconds for the point to start the video
Sheet1.WindowsMediaPlayer1.uiMode = "full"
Sheet1.WindowsMediaPlayer1.stretchToFit = True
Sheet1.WindowsMediaPlayer1.Width = "525"
Sheet1.WindowsMediaPlayer1.Height = "350"
-----------------------------------------------------------------------
https://stackoverflow.com/questions/5590291/windows-media-player-control-get-set-video-position
villeicht hilft dir da schon was von
LG udo
Anzeige
AW: Frage noch offen .owT.
20.02.2022 08:49:13
Jörn
Moin Udo,
Großartig, du hast den entscheidenden Hinweis gegeben!! Wenn man in das VBA
"Sheet1.WindowsMediaPlayer1.fullscreen = true"
einbaut, funktioniert es. Ich hatte es vorher immer ohne Hinweis auf die Tabelle (Sheet1) versucht, dann funktioniert es nicht. Auch das Starten des Videos kann man so steuern. Falls es dich interessiert wofür ich die Funktion nutzen will, findest du dazu hier ein Video meiner Anwendung:
Use In/Out to get professional statistics and as a cheap Hawkeye.
https://youtu.be/OD-60QWRNlw
allerdings noch ohne die neue Funktion: Video highlights of your tennis match
Herzlichen Dank für deine Hilfe!!
LG
Jörn
Anzeige
AW: Frage noch offen .owT.
20.02.2022 12:10:53
udo
Hi Jörn,
gern geschehen, schön dass sich Hartnäckigkeit mal wieder auszahlt oder ;-)
prima, das freut mich sehr, sieht wirklich toll aus was ihr da macht.
Jetzt ist mir auch klar warum du es so haben wolltest.
Schönen Sonntag
LG udo

147 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige