Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
700to704
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
700to704
700to704
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Laufschrift in Userform

Laufschrift in Userform
28.11.2005 09:52:38
Heinz
Hallo Excelfans!
Möchte in meinem Userform eine Laufschrift einbauen. Dies soll so aussehen dass nach dem Aufruf des userform einfach ein bstimmter Text immer wieder von rechts nach links durchläuft.(so wie z.b im Fernsehen die Börsenkurse)
Geht das ?
Grüße Heinz

26
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufschrift in Userform
28.11.2005 10:28:04
Nepumuk
Hallo Heinz,
leg eine neue Textdatei an. In diese gibst du folgendes ein:
&lthtml&gt
&ltbody&gt
&ltmarquee&gtDas ist der Text der durchlaufen soll&lt/marquee&gt&ltbr&gt
&lt/body&gt
&lt/html&gt
Diese Textdatei benennst du z.B. in "text.htm" um.
In deinem Userform integrierst du das "Webbrowser-Control" und gibst folgenden Code im Modul des Userforms ein:
Option Explicit

Private Sub UserForm_Activate()
    WebBrowser1.Navigate "C:\Dokumente und Einstellungen\Administrator\Desktop\text.htm"
End Sub

Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
    With WebBrowser1.Document.body
        .Scroll = "no"
        .Style.Border = "none"
    End With
End Sub

Den Pfad musst du natürlich noch anpassen.
Gruß
Nepumuk

Anzeige
AW: Laufschrift in Userform
28.11.2005 10:36:07
Heinz
Vielen Dank.Wünsche noch eine schöne Woche
HEINZ
AW: Laufschrift in Userform
28.11.2005 10:53:26
Matthias
Hi Nepumuk,
ich habe dein Beispiel ausprobiert und muss feststellen, dass meiner besser flutscht ;-)
Aber wie unten erwähnt, funktioniert der restliche Code der UF vielleicht nicht richtig, weil er innerhalb der Do...Loop-Schleife nur durch DoEvents ermöglicht wird...
Müsste man intensiver testen. Rechenintensiver ist meiner allemal ;-)
Gruß Matthias
AW: Laufschrift in Userform
28.11.2005 11:00:47
Nepumuk
Hallo Matthias,
so was würde ich nie in einer Schleife machen. Wozu gibt es einen Timer. Aber ehrlich gesagt, halte ich von solchen Spielereien nichts.
Gruß
Nepumuk

Anzeige
AW: Laufschrift in Userform
28.11.2005 11:05:08
Matthias
Hallo Nepumuk,
ja, aber der Excel-"Timer" (Application.OnTime) kann ja nicht hundertmal in der Sekunde gestartet werden.
Was anderes wäre natürlich das Timer-Steuerelement von Hans.
Gruß Matthias
AW: Laufschrift in Userform
28.11.2005 11:06:53
Nepumuk
Hallo Matthias,
ich dachte da auch mehr an API.
Gruß
Nepumuk
AW: Laufschrift in Userform
28.11.2005 18:32:43
tina
hi nepumuk,
ich habe mal deinen code ausprobieren wollen,
bekomme aber eine fehlermeldung:
variable nicht definiert
und : WebBrowser1 ist markiert.
was habe ich falsch gemacht?
danke für die hilfe
Gruss Tina
AW: Laufschrift in Userform
28.11.2005 18:47:41
Nepumuk
Hallo Tina,
ist denn auch ein WebBrowser-Control auf deinem Userform? Hier mal eine funktionierende Mappe. https://www.herber.de/bbs/user/28789.xls
Gruß
Nepumuk

Anzeige
AW: Laufschrift in Userform
28.11.2005 18:53:10
tina
hi nepumuk,
ne, hatte ich nicht in meiner UF. deine mappe läuft einwandfrei.
habe allerdingst auch gar nicht so ein webbrowser-control in meiner werkzeugsammlung.
woher bekomme ich den denn?
Gruss Tina
danke, habe ich wohl übersehen :-) o.t.
28.11.2005 18:58:07
tina
Gruss Tina
AW: Laufschrift in Userform
28.11.2005 10:43:31
Matthias
Hallo Heinz,
mein Vorschlag:
In eine Userform eine Label "Label1"
Der Code:

Option Explicit
Const LaufText = "Guten Morgen, Heinz"
Private Sub UserForm_Initialize()
With Label1
.Caption = LaufText
.AutoSize = True
.Left = Me.Width + 10
End With
End Sub
Private Sub UserForm_Activate()
Const Speed = 0.01
Dim t1 As Single
On Error GoTo geschlossen
t1 = Timer + Speed
Do While Me.Visible = True
DoEvents
'i = i + 1
'je kleiner, desto schneller die Geschwindigkeit
If Timer > t1 Then
'i = 0
t1 = Timer + Speed
With Label1
.Left = .Left - 1
If .Left + .Width < 0 Then
.Left = Me.Width + 10
End If
End With
End If
Loop
geschlossen:
End Sub
'Schließen-Knopf
Private Sub CommandButton1_Click()
Unload Me
End Sub

Der Code von Nepumuk ist wahrscheinlich besser, v.a. weil der Code nicht in einer Endlosschleife läuft, bis die UF entladen wird, aber ich hab mir jetzt solche Mühe gegeben... ;-)
Gruß Matthias
Anzeige
AW: Laufschrift in Userform
28.11.2005 10:52:00
Nepumuk
Hallo,
hier noch eine Variante ohne externe Datei:
' **********************************************************************
' Modul: UserForm1 Typ: Userform
' **********************************************************************

Option Explicit

Private Declare Sub Sleep Lib "kernel32.dll" ( _
    ByVal dwMilliseconds As Long)

Private blnLoad As Boolean

Private Sub UserForm_Activate()
    WebBrowser1.Navigate2 "about:blank"
    Do While blnLoad
        DoEvents
        Sleep 10
    Loop
    WebBrowser1.Document.body.innerHTML = _
        "<marquee>Das ist der Text der durchlaufen soll</marquee>"
End Sub

Private Sub WebBrowser1_BeforeNavigate2(ByVal pDisp As Object, _
        URL As Variant, Flags As Variant, TargetFrameName As Variant, _
        PostData As Variant, Headers As Variant, Cancel As Boolean)

    blnLoad = True
End Sub

Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
    blnLoad = False
End Sub

Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
    With WebBrowser1.Document.body
        .Scroll = "no"
        .Style.Border = "none"
    End With
End Sub

Gruß
Nepumuk

Anzeige
AW: Laufschrift in Userform
28.11.2005 10:56:03
Heinz
VIELEN DANK!!!
Bin sprachlos.Soviel Mühe für mich. Werde alle 3 Möglichkeiten probieren.
DANKE
HEINZ
Frage zu: Laufschrift in Userform
28.11.2005 11:31:58
Lorenz
Hallo Nepumuk!
Habe beim Code mitgenascht und natürlich gleich ausprobiert!
Funktioniert einwandfrei!!!
Meine Frage hiezu: Ist es möglich (wie ist es möglich) die Laufschrift aus bzw einzuschalten (z.B.) über OptionsButton oder (bei Ereignissen jeglicher Art)
Danke
Lorenz
AW: Frage zu: Laufschrift in Userform
28.11.2005 11:39:41
Nepumuk
Hallo Lorenz,
beispielsweise so:
Private Sub CommandButton1_Click() 'aus
    WebBrowser1.Document.body.innerHTML = ""
End Sub

Private Sub CommandButton2_Click() 'ein
    WebBrowser1.Document.body.innerHTML = _
        "<marquee>Das ist der Text der durchlaufen soll</marquee>"
End Sub

Gruß
Nepumuk

Anzeige
AW: Frage zu: Laufschrift in Userform
28.11.2005 11:52:20
Lorenz
Hallo Nepumuk!!
Danke vielmals für die (wie immer funktionierende[schnelle])Hilfe.
Nochmals
Danke & Grüße
Lorenz
AW: Frage zu: Laufschrift in Userform
28.11.2005 12:14:09
Peter
Wie aktiviere ich diesen Webbrowser-control?
AW: Frage zu: Laufschrift in Userform
28.11.2005 12:50:29
Nepumuk
Hallo Peter,
Rechtsklick in die Werkzeugsammlung - Zusätzliche Steuerelemente - Micrsosft Webbrowser.
Gruß
Nepumuk

AW: Frage zu: Laufschrift in Userform
28.11.2005 12:19:07
Tom
Hallo Nepumuk,
habe mir ebenfalls deinen Code gezogen. Das Teil ist wirklich super.
Eine Frage hätte ich zum Document.body.
Gibt es Möglichkeiten das Styling zu ändern, z.B. eine andere Hintergrundfarbe oder Schriftfarbe.
Diesen Teil meine ich:

Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
With WebBrowser1.Document.body
.Scroll = "no"
.Style.Border = "none"
End With
End Sub

Gibts da noch Möglichkeiten der Veränderung ? Wenn ich den Punkt setze, zeigt mir die VBA-Hilfe leider keine Möglichkeiten an, wie z.B. bei einer Textbox.
Im voraus vielen Dank
Mfg
Tom
Anzeige
AW: Frage zu: Laufschrift in Userform
28.11.2005 12:54:19
Nepumuk
Hallo Tom,
das geht nur über Html. Wenn du einen Editor wie z.B. FrontPage hast, dann formatiere dort deinen Text, wie du ihn haben willst, und benutze dann den Html-Code.
Gruß
Nepumuk

AW: Frage zu: Laufschrift in Userform
28.11.2005 13:06:31
Tom
Hallo Nepumuk,
bin beim Googeln auf diese Eigenschaft gestossen:
.Style.backgroundcolor = "buttonface"
Damit habe ich die gleiche Hintergrundfarbe wie ein Button. Dann müsste man doch auch anstatt "buttonface" eine andere Hintergrundfarbe einstellen können. Nur wie schreibe ich z.B. rot oder blau anstatt "buttonface".
Eine Idee ?
MfG
Anzeige
AW: Frage zu: Laufschrift in Userform
28.11.2005 13:10:57
Tom
Hab's gefunden !
Einfach "red" oder "blue" reinschreiben u. schon ändert sich der Hintergrund.
Vielleicht gibts noch andere Möglichkeiten
MfG
AW: Frage zu: Laufschrift in Userform
28.11.2005 13:14:17
Nepumuk
Hallo Tom,
du kannst auch RGB - Farben verwenden. Aber Achtung, R und B sind vertauscht.
Gruß
Nepumuk

Anzeige
AW: Frage zu: Laufschrift in Userform
28.11.2005 13:44:37
Tom
Hallo Nepumuk,
Also dein Programm ist wirklich gigantisch. Endlich eine vernünftige Laufschrift, ohne externes Programm u. man kann während die Schrift läuft in Excel weiter arbeiten. Dank deinem Tipp mit den Farben u. dank Google gibts ja noch einige Möglichkeiten die Laufschrift zu ändern.
Danke
MfG

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige