Registriert seit: 26.09.2018
Version(en): Office 2016
Excel-VBA
Hallo,
ich möchte gerne Überschriften automatisch zentriert dargestellt haben, also: Wenn in einem Spaltenbereich der Eintrag "X" oder "Y" steht, handelt es sich um eine Überschrift. Diese soll automatisch bereits nach der Eingabe zentriert dargestellt werden, alle anderen Eingaben aber linksbündig.
Wird der Zelleintrag geändert ... z. B. in "A" ... soll wieder eine linksbündige Darstellung erfolgen.
Sicher simple einfach ... aber ich schaffe es nicht.
Danke und lieben Gruss, Elmar
Registriert seit: 11.04.2014
Version(en): Office 365
Hallo,
Überschriften stehen üblicherweise in Zeile 1. Wozu also der Aufwand?
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter,
der Misserfolg ist ein Waisenkind
Richard Cobden
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
Moin!
Ich habe es ebenfalls wohl noch nicht ganz verstanden.
Eine Beispieldatei könnte beim Helfen helfen.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 26.09.2018
Version(en): Office 2016
Hallo ...
Beispiel:
Spalte D
Möbel (zentriert)
Tisch (linksbündig)
Stuhl (linksbündig)
...
Fahrzeuge (zentriert)
Auto (linksbündig)
Motorrad (linksbündig)
...
... also wenn in Spalte D Eintrag = "Möbel" oder "Fahrzeuge" ... dann ....
Danke und Gruss, Elmar
Registriert seit: 11.04.2014
Version(en): Office 365
Hallo,
Zwischenüberschriften und leere Zeilen gehören zu den 10 Todsünden beim erstellen einer Exceldatei.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter,
der Misserfolg ist ein Waisenkind
Richard Cobden
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
31.10.2020, 15:01
(Dieser Beitrag wurde zuletzt bearbeitet: 31.10.2020, 15:01 von RPP63.)
Da
des Menschen Wille bekanntlich sein Himmelsreich ist, hier mal eine Lösung.
Erweitern darfst Du selbst:
Private Sub Worksheet_Change(ByVal Target As Range)
With Target
If .Column = 4 And .CountLarge = 1 Then
If .Text = "Möbel" Or .Text = "Fahrzeuge" Then
.HorizontalAlignment = xlCenter
.Font.Bold = True
Else
.HorizontalAlignment = xlLeft
.Font.Bold = False
End If
End If
End With
End Sub
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:1 Nutzer sagt Danke an RPP63 für diesen Beitrag 28
• el_gor
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
31.10.2020, 15:56
(Dieser Beitrag wurde zuletzt bearbeitet: 31.10.2020, 15:56 von schauan.)
Hallöchen,
hier mal auf die Aufgabe angepasst
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
With Target
If .Column = 1 And .CountLarge = 1 Then
If .Text = "x" Or .Text = "y" Then
.offset(,3).HorizontalAlignment = xlCenter
.offset(,3).Font.Bold = True
Else
.offset(,3).HorizontalAlignment = xlLeft
.offset(,3).Font.Bold = False
End If
End If
End With
End Sub
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
Ich glaube, dass mein Code eher der "Beispieldatei" entspricht, André!
:100:
Schließlich wurde aus "X" "Möbel" und aus "einem Spaltenbereich" nun die Spalte D.
Irrtum (nicht) ausgeschlossen.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Halöchen,
durchaus möglich. ich habe das
Zitat:Wenn in einem Spaltenbereich der Eintrag "X" oder "Y" steht, handelt es sich um eine Überschrift. ... Wird der Zelleintrag geändert ... z. B. in "A" ...
als Spalte aufgefasst, wo die x und y stehen bzw. wo mit x oder y gesteuert werden soll, was eine Überschrift ist. Ansonsten bekommt man für 1001 Überschriften einen entsprechend umfangreichen code
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
(31.10.2020, 16:07)schauan schrieb: Ansonsten bekommt man für 1001 Überschriften einen entsprechend umfangreichen code
Wohl wahr!
Dies würde ich dann mit einer Hilfstabelle, die alle "Warengruppen" auflistet, lösen.
(Range.Find-Methode nebst If Not Suche Is Nothing Then …)
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)