Anzeige
Archiv - Navigation
840to844
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
840to844
840to844
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

[Makro] Texteingabe in aktivierte Zelle

[Makro] Texteingabe in aktivierte Zelle
06.02.2007 10:43:44
Sven
Hallo,
habe früher schon öfter Hilfe hier gefunden, und hoffe auch diesmal auf das Wissen der User zurückgreifen zu können. Mein Problem befasst sich mit Makros für Excel.
Ziel ist es, dass per Tastendruck in eine bereits gefüllte Zelle nach einem neuen Zeilenumbruch folgender Inhalt erscheint: Ergebnis von " & ReadWordUserInitials & " am " & Format(Date, "DD.MM.YY") & ":.
Dieser Text soll in „Fetten“ Buchstaben dargestellt werden und man soll ohne die Zelle erneut aktivieren zu müssen, nach den Doppelpunkten ohne jegliche Sonderformatierung weiter schreiben können.
Bisher sieht mein Aufbau so aus:
Option Explicit

Function ReadWordUserInitials() As String
Dim appDoc As Object
Set appDoc = CreateObject("Word.Application")
ReadWordUserInitials = appDoc.UserInitials
Set appDoc = Nothing
End Function


Sub Makro1()
' Makro1 Makro
' Makro am 11.01.2006 von Sven Worthmann aufgezeichnet
' Tastenkombination: Strg+q
ActiveCell.Value = "Ergebnis von " & ReadWordUserInitials & " am " & Format(Date, "DD.MM.YY") & ":"
With ActiveCell.Characters(Start:=1, Length:=27).Font
.Name = "Arial"
.FontStyle = "Fett"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
With ActiveCell.Characters(Start:=28, Length:=1).Font
.Name = "Arial"
.FontStyle = "Standard"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Évtl hat jemand von Euch eine Lösung für dieses Problem.
Schon einmal vielen Dank für Eure Zeit und Eure Mühen
Mit freundlichen Grüßen
Sven

		

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: [Makro] Texteingabe in aktivierte Zelle
06.02.2007 10:48:53
Rudi
Hallo,
am Ende:
SendKeys "{F2}"
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe
Ergänzung/ Korrektur
06.02.2007 11:00:34
Rudi
Hallo,

Sub Makro1()
With ActiveCell
.Value = "Ergebnis von " & ReadWordUserInitials & " am " & Format(Date, "DD.MM.YY") & ": "
With .Characters(Start:=1, Length:=Len(.Value) - 1).Font
.Name = "Arial"
.FontStyle = "Fett"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
With .Characters(Start:=Len(.Value), Length:=1).Font
.Name = "Arial"
.FontStyle = "Standard"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
End With
SendKeys "{F2}"
End Sub
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe
Anzeige
AW: Ergänzung/ Korrektur
06.02.2007 14:45:42
Sven
Hallo und vielen Dank an Rudi,
leider habe ich noch immer das Problem, dass wenn ich dieses Makro in einer Zelle ausführe, die schon einen Text (einzeilig oder mehrzeilig) beinhaltet, das "Ergebnis am " in einer neuen Zeile unterhalb des bisher schon bestehenden Textes haben möchte.
Momentan habe ich aber das Problem, das die Zeile überschrieben wird. Aber der Trick mit dem Sendkey merk ich mir schon einmal.
Falls noch jemand Hilfe weiss, würde ich mich über eine weitere Antwort sehr freuen.
Mit freundlichen Grüßen
Sven
AW: Ergänzung/ Korrektur
06.02.2007 15:07:25
Rudi
Hallo,
das hab ich übersehen.

Sub Makro1()
With ActiveCell
.Value = .Value & IIf(.Value <> "", vbLf, "") & "Ergebnis von " & ReadWordUserInitials & " am " & Format(Date, "DD.MM.YY") & ": "
With .Characters(Start:=1, Length:=Len(.Value) - 1).Font
.Name = "Arial"
.FontStyle = "Fett"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
With .Characters(Start:=Len(.Value), Length:=1).Font
.Name = "Arial"
.FontStyle = "Standard"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
End With
SendKeys "{F2}"
End Sub
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe
Anzeige
AW: Ergänzung/ Korrektur
07.02.2007 07:52:57
Sven
Hallo Rudi,
so habe ich mir das (fast) vorgestellt. Nun gibt es noch 2 kleine Probleme, die ich nach einigem hin und her probieren immer noch mit dem lieben Makro habe:
Der Ursprungstext wird nun mit Fett formatiert. Habs irgendwie nicht hinbekommen, dass wirklich nur das neue "Ergebnis am ... usw usf" Fett dargestellt wird.
Und er nimmt das 'SendKeys "(F2)" ' nicht mehr :(
Falls du noch ein Lust und Zeit hättest dein Wissen hier einfliessen zu lassen, bedank ich mich schon einmal im voraus.
Einen wunderschönen Mittwoch wünscht der Sven
AW: Ergänzung/ Korrektur
07.02.2007 08:44:25
Rudi
Hallo,
F2 geht bei mir.

Sub Makro1()
Dim iLength As Integer
With ActiveCell
iLength = Len(.Value)
.Value = .Value & IIf(.Value <> "", vbLf, "") & "Ergebnis von " & ReadWordUserInitials & " am " & Format(Date, "DD.MM.YY") & ": "
With .Characters(Start:=iLength + 1, Length:=Len(.Value) - 1 - iLength).Font
.Name = "Arial"
.FontStyle = "Fett"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
With .Characters(Start:=Len(.Value), Length:=1).Font
.Name = "Arial"
.FontStyle = "Standard"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
End With
SendKeys "{F2}"
End Sub


Function ReadWordUserInitials() As String
Dim appDoc As Object
Set appDoc = CreateObject("Word.Application")
ReadWordUserInitials = appDoc.UserInitials
Set appDoc = Nothing
End Function

Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe
Anzeige

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige