Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Zahlencode der Zellfüllfarben auflisten/ VBA Anpassung
#1
Hallo Zusammen,



wie kann man das angehängte VBA-Macro so anpassen, dass die Auflistung für jeweilige Range in Zeile 6 nur in den Zellen ausgeführt wird wenn in der jeweils 4 nach links gerückten Zelle ein Wert steht?



Bsp:

Für die Range "$CF$6:$CF$208, $CK$6:$CK$208, $CP$6:$CP$208" den Wert in Zelle -1 nur ausgeben, wenn in der Zelle -4, also

in der Range "$BF$6:$CF$208, $CG$6:$CK$208, $CL$6:$CP$208" ein Wert steht und diese also nicht "blank" ist.


Angehängte Dateien
.xlsx   VBA List Colours.xlsx (Größe: 15,84 KB / Downloads: 8)
Antworten Top
#2
Hallo,

ist das dein Ernst?

Eine Beschreibung, mit der ich zumindest, nichts anfangen kann.

Und eine Beispielmappe mit dem Codeversuch in einem Tabellenblatt?? Was soll man damit??

Lade mal eine Mappe hoch mit ein paar Daten in der du dann aufzeigst, was du, wo als Ergebnis haben willst.

Gruß Werner
Antworten Top
#3
Hallöchen,

Du hast den Ansatz doch schon in Deinem Makro. Da steht was mit Offset ...
Das Prinzip bringt Dich zur Lösung.

Code:
If c.Offset(0,-4)<>"" then
  c...
  c...
End If

@Werner,

Zitat:Und eine Beispielmappe mit dem Codeversuch in einem Tabellenblatt?? Was soll man damit??

Es gibt Antworter, die keine xlsm oder xlsb laden. Code bekommt man dann nur auf einem Blatt oder Textdatei oder im Beitrag gepostet ... - auch als Hinweis na Newbie78 - probier mal den 5. Button von rechts direkt über dem Textfenster
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#4
Hallöchen,
erstmal Danke an Schauan für die Hilfe.

Zum vollständigen Hintergrund anbei noch die Mappe mit Beispieltabelle und funktionstüchtigem Macro.
Dort sieht man auch wie es angewendet werden muss.

Ich muss auch zu meiner Verteidigung sagen, dass ich absolut kein Exel Profi bin. Deshalb bin ich ja hier, damit`s endlich besser wird. :21:
Daher ist es für mich immer sehr hilfreich, wenn ich wüßte wo genau ich was wie einfügen oder ändern muß. Blush
VIELE GRÜßE & DANKE iM VORAUS


Angehängte Dateien
.xlsm   X1.xlsm (Größe: 30,55 KB / Downloads: 4)
Antworten Top
#5
...hier noch die genaue Beschreibung was das Macro tun soll:

Am Beispiel von Jahr 1 erklärt:
Wenn in der jeweiligen Zelle von Spalte CB (grau markiert) ein Wert steht, soll der Farbzahlencode der Farbe in der jeweiligen Zelle in Spalte CF (verschiedenfarbig) in der jeweils vorstehenden Zelle in der Spalte CE (gelb markiert) ausgegeben werden.

Falls in CB kein Wert steht soll die Zeile übersprungen werden.

Und dieses Vorgehen soll für Jahr 1, Jahr 2 und Jahr 3 zeitgleich geschehen.


@Schauan: Deinen Vorschlag habe ich probiert. Es kommt darauf die Fehlermeldung "Syntax Error".
Antworten Top
#6
(02.08.2020, 00:35)Newbie78 schrieb: Deshalb bin ich ja hier, damit`s endlich besser wird.

Hallo, :19:

na dann - alle Infos im Code: :21:

.xlsm   X1.xlsm (Größe: 32,32 KB / Downloads: 6)
________
Servus
Case
Antworten Top
#7
Hallo,

da Du meinen Vorschlag nicht in der angehängten Datei hast kann ich nur mal spekulieren, dass Du was falsch übernommen hast. Hier mal etwas ausführlicher. Ein Fehler kommt dabei nicht.

Code:
For Each c In Selection
  If c.Offset(0, -4) <> "" Then
    ' Cell background color.
    ' - won't return conditional Formatting colors
    c.Offset(0, -1).Value = c.Interior.Color
    c.Offset(0, -1).Value = c.DisplayFormat.Interior.Color
  End If
Next c
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#8
Hi CASE.

it works! :18:
Vielen vielen Dank nochmal!!!

Was muss ich tun, damit es immer beim öffnen der Mappe gestartet wird?
Antworten Top
#9
Hallo, :19:

packe folgenden Code noch unter DieseArbeitsmappe bzw. bei dir ThisWorkbook: :21:

Code:
Option Explicit
Private Sub Workbook_Open()
    Call Main
End Sub
________
Servus
Case
[-] Folgende(r) 1 Nutzer sagt Danke an Case für diesen Beitrag:
  • Newbie78
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste