Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zellwert in Textfeld

Zellwert in Textfeld
16.11.2012 12:10:27
Tom
Hallo zusammen,
ich habe eine Liste mit Begriffen von A1:A250
Nun möchte ich diese Begriffe
- in ein eigenes Textfeld rechts daneben z.B. Spalte B:F
- dieses Textfeld ohne Linie und Füllung schwarz
- Schriftart weiß
Ich habe es mit dem Makrorekorder versucht, aber das ist ....
Die Profis hier haben sicher ne bessere Lösung.
Sub Makro2()
' Makro2 Makro
Range("A79").Select
Selection.Copy
ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 394.5, 1337.25, _
297.75, 17.25).Select
Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = _
"Hallenatmosphäre "
Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 17).ParagraphFormat. _
FirstLineIndent = 0
With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 16).Font
.Bold = msoFalse
.NameComplexScript = "+mn-cs"
.NameFarEast = "+mn-ea"
.Fill.Visible = msoTrue
.Fill.ForeColor.ObjectThemeColor = msoThemeColorDark1
.Fill.ForeColor.TintAndShade = 0
.Fill.ForeColor.Brightness = 0
.Fill.Transparency = 0
.Fill.Solid
.Size = 11
.Italic = msoFalse
.Name = "+mn-lt"
.UnderlineStyle = msoNoUnderline
.Strike = msoNoStrike
End With
With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(17, 1).Font
.NameComplexScript = "+mn-cs"
.NameFarEast = "+mn-ea"
.Fill.Visible = msoTrue
.Fill.ForeColor.ObjectThemeColor = msoThemeColorDark1
.Fill.ForeColor.TintAndShade = 0
.Fill.ForeColor.Brightness = 0
.Fill.Transparency = 0
.Fill.Solid
.Size = 11
.Name = "+mn-lt"
End With
Selection.ShapeRange.Fill.Visible = msoFalse
Selection.ShapeRange.Line.Visible = msoFalse
With Selection.ShapeRange.Fill
.Visible = msoTrue
.ForeColor.ObjectThemeColor = msoThemeColorLight1
.ForeColor.TintAndShade = 0
.ForeColor.Brightness = 0
.Solid
End With
With Selection.ShapeRange.Fill
.Visible = msoTrue
.ForeColor.ObjectThemeColor = msoThemeColorText1
.ForeColor.TintAndShade = 0
.ForeColor.Brightness = 0
.Transparency = 0
.Solid
End With
With Selection.ShapeRange.TextFrame2.TextRange.Font.Fill
.Visible = msoTrue
.ForeColor.ObjectThemeColor = msoThemeColorBackground1
.ForeColor.TintAndShade = 0
.ForeColor.Brightness = 0
.Transparency = 0
.Solid
End With
Range("C75").Select
End Sub
Danke vorab
TOM

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellwert in Textfeld
17.11.2012 13:10:26
Tobias
Hi TOM,
Versuch es mal hiermit:
Linien höhe usw musst du noch anpassen.
Sub test()
Dim lgEnde
Dim Zelle
Dim sprung
With Worksheets("Tabelle1")
lgEnde = .Cells(Rows.Count, 1).End(xlUp).Row
Bereich = .Range(.Cells(1, 1), .Cells(lgEnde, 1))
For i = 1 To lgEnde
sprung = Application.CentimetersToPoints(i)
Set TB = .Shapes.AddTextbox(msoTextOrientationHorizontal, 100, 100 + sprung, 200, 50)
With TB
.TextFrame2.TextRange.Characters.Text = Worksheets("Tabelle1").Cells(i, 1)
End With
Set TB = Nothing
Next i
End With
End Sub

Anzeige
AW: Zellwert in Textfeld
17.11.2012 13:59:24
Tom
Hallo Tobias,
super, vielen Dank! Sind auf einem guten Weg :-)
Wie kann ich alle Textboxen auf einmal aktivieren um die Linien usw. anzupassen?
Mit diesem Makro klappt es nicht:
Sub_Linien_Füllung()
ActiveSheet.Shapes.Range(Array("TextBox 1:TextBox 250")).Select
Selection.ShapeRange.Fill.Visible = msoFalse
Selection.ShapeRange.Line.Visible = msoFalse
End Sub

Anzeige
AW: Zellwert in Textfeld
17.11.2012 19:26:01
Tobias
Hi!
Die Textfelder werden nacheinander abgearbeitet, d.h. wir machen hier keine Selection über alle, sondern formatieren die Textfelder direkt, wenn sie entstehen.
Vielleicht gibt es noch eine Eigenschaft die keine Linie zeichnet, die hab ich aber gerade auf die Schnelle nicht gefunden und einfach den Rahmen schwarz gemacht. Jetzt musst du nur noch über die Variable "sprung" das ganze so kalibrieren und die Textfeldgrößen so anpassen wie du es benötigst. Wie du es brauchst.Markiere dafür einfach in Editor "Addtextbox" und drück F1, dann bekommst du die Hilfe dazu.
VG
Tobi
Sub test()
Dim lgEnde
Dim Zelle
Dim sprung
Dim i
Dim TB
With Worksheets("Tabelle1")
lgEnde = .Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To lgEnde
sprung = Application.CentimetersToPoints(i)
Set TB = .Shapes.AddTextbox(msoTextOrientationHorizontal, 100, 100 + sprung, 200, 50)
With TB
.TextFrame2.TextRange.Characters.Text = Worksheets("Tabelle1").Cells(i, 1)
.TextFrame2.TextRange.Font.Fill.ForeColor.ObjectThemeColor = msoThemeColorBackground1
.Fill.ForeColor.RGB = RGB(0, 0, 0)
.Line.DashStyle = msoLineDashDotDot
.Line.ForeColor.RGB = RGB(0, 0, 0)
End With
Set TB = Nothing
Next i
End With
End Sub

Anzeige
AW: Zellwert in Textfeld
18.11.2012 14:42:51
Tom
DANKE !!!!
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige