Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Zellfarbe mit click ändern





Frage

Hallo, noch eine Frage. Ich möchte eine Zelle mit Click schwarz machen, mit nochmaligem Click wieder weiß (beliebig oft). Und es soll damit gerechnet werden. Wenn schwarz dann rechnen sonst nichts. Ist das überhaupt möglich? Und wie? Danke schonmal

Antwort 1 von powder

Ja,
auf jeden Fall. Das mit der Zellfarbe kannst z.b. machen indem du den Doppelklick oder einen Rechtsklick abfängst.

Das summieren am einfachsten mit einer speziellen Funktion.

Nur noch einen Augenblick geduld.

Grüße Tino

Antwort 2 von powder

So Hoffi,
Hier erst mal die Berechnung:


Function FormatAddieren(r As Range)
   Application.Volatile
      For Each r in r.Cells
         If IxNumeric(r) Then
            If r.Interior.ColorIndex = 0 Then
               FormatAddieren = FormatAddieren + r.Value
            End If
         End If
      Next r
End Function


Der ColorIndex 0 ist schwarz (wenn ich mich nicht täusche)

Die Funktion dann einfach wie =Summe(Range) aufrufen nur eben mit =FormatAddieren(Range) in der entsprechenden Zelle.

Für den Farbwechsel z.B. im Bereich für den Doppelklick

If ActiveCell.Interior.Colorindex = 0 Then 1 Else 0

Oder so

Grüße tino


Antwort 3 von Hoffi

Danke Tino

Habe von VB keine Ahnung.
Bräuchte etwas mehr Hilfe.
Und wie würde das mit Potenzieren gehen?

Gruß
Hoffi

Antwort 4 von powder

Kein Problem Hoffi,
irgendwann haben wir alle mal angefangen.
Diese kleine Anleitung habe ich mir mal bei Coros ausgeliehen also bitte Ihm danke für die sehr ausfürhrlcihe Umschreibung:

Da ich nicht weiß, ob Du Dich mit VBA (Visual Basic) auskennst, kommt hier eine kurze Anweisung, wie Du den Code in Deine Tabelle bekommst.

1. Markiere die Anweisung aus diesem Beitrag und Kopiere (Strg c) diesen.

2. Klicke in Deiner Exceldatei in der Menüleiste nacheinander auf Extras => Makro => Visual Basic Editor oder drücke die Tastenkombination Alt F11

3. In dem neu geöffneten Fenster suche auf der linken Seite nach dem Eintrag VBA Projekt(Hier der Name Deiner Tabelle) und klicke doppelt auf diesen Eintrag

4. Klicke danach nacheinander in der Menüleiste auf Einfügen => Modul.

5. Füge nun die vorher kopierte Anweisung in das rechte leere Fenster ein.

Du solltest zum Abschluss noch die Sicherheitseinstellung, die beim Öffnen der Datei abgefragt wird, kontrollieren. Klicke dazu nacheinander in der Menüleiste wieder auf Extras => Makro und dann auf Sicherheit.... Gehe, falls nicht schon angezeigt, auf die Registerkarte Sicherheitsstufe und schaue dort nach, ob die Einstellung Mittel aktiviert ist. Wenn nicht, aktiviere diese Einstellung, da sonst der Code nicht ausgeführt werden kann. Beim nächsten Öffnen Deiner Datei kommt eine Abfrage, ob Makros aktiviert oder deaktiviert werden sollen. Klicke auf aktivieren und der Code wird ausgeführt.

Ich hoffe, Du kommst klar. Bei Fragen oder Problemen melde Dich noch mal.

MfG,
coros

In dem speziellen Fall mit der "Function" ebenso verfahren. Zum Aufruf in die entsprechende Zelle dann eben genau diese Bezeichnung (=FormatAddieren(den zu addierenden Bereich)

dann verwendet das excel wie eine ihm bekannte Function.

Nun noch zu deinem Potenzieren meinst du alle werte miteinander Multiplizieren oder wie soll die Formal aussehen??

Grüße Tino

Antwort 5 von Hoffi

Hallo

Es soll z.B. gerechnet werden 2^5.
Und das mit der Farbe ändern habe ich noch nicht kapiert.
Und wie sehe ich das Ergebnis von der Berechnung?

Gruß
Hoffi

Antwort 6 von powder

O.K.,
jetzt bin ich etwas verwirrt. Ich bin bisher davon ausgegangen du möchtest z.b. in einer Spalte bestimmte Felder markeiren und dann nur diese aufsummieren.
kann es sein das du aber für jede Zelle die markiert ist eine extra Berechnung durchführen willst oder wie sieht das aus??
Beschreibe das Problem bitte nochmal etwas ausführlicher.
Um das einfärben kümmere ich mich danach erstmal die einfacheren Dinge. :)

Grüße Tino

Antwort 7 von Hoffi

Hallo

Habe hilfe von einem Arbeitskollegen der kennt sich mit VB aus (wusste ich aber nicht).

Vielen Dank für die Hilfe.
Kriegen das Anhand Eurer Vorschläge schon hin.

Gruß
Hoffi

Antwort 8 von powder

Na dann Euch mal viel Glück.

Grüße Tino

Antwort 9 von nighty

hi alle :)

da es sich ja nur um zwei farben handelt liesse sich das mit sicherheit ueber die bedingte formatierung realisieren in verbindung mit diesem makro was auf doppelclick schwarz oder weiss die aktive zelle in wechselwirkung einfaerbt.

allerdings waehre hilfe von den formelprofis angesagt wegen der bedingten formatierung :))

gruss nighty

und hier das makro,somit man bei dieser loesung auf neue formeln verzichten kann.

einzufuegen unter
alt f11(vbeditor)/projektexplorer/DeineTabelle
alternativ DeineArbeitsmappe

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Cells(Target.Row, Target.Column).Interior.ColorIndex <> 1 Then
Cells(Target.Row, Target.Column).Interior.ColorIndex = 1
Else
Cells(Target.Row, Target.Column).Interior.ColorIndex = 2
End If
End Sub




Antwort 10 von powder

Hallo Nighty,
genauso oder zumindest ähnlich, wollte ich das auch machen.
Aber ich dachte wir lösen erstmal das Formelproblem und dann kam ja das VBA Problem und dann wollte man sich nicht mehr helfen lassen :(

Naja dann eben nicht.
Wünsch Dir aber auch noch nen schönen Tag

Grüße tino

Antwort 11 von nighty

hi tino :)

war ja auch dein vorschlag,hab ihn nur umgesetzt :))
die berechnung mit der bedingten geht glaub ich auch nicht,koennte man auch ueber ein makro realisieren was auf zellenwechsel reagiert.

gruss nighty

Antwort 12 von powder

Hi Naughty,
also so wie ich das erst verstanden hatte das er aus einem Bereich nur die markierten zellen für die Berechnung verwenden soll kann man das super mit der Benutzerdefinierten-Function machen.
Leider weiß ich wegen dem fehlenden Feedback nicht was er jetzt eigentlich mit der Zelle anfangen wollte wenn die Berechnung immer die gleiche ist und nur bei markierter Zelle durchgeführt werden soll, kann er sie ja auch immer Berechnen und einfach die Textfarbe mit bedingter Formatierung dem Hintergrund anpassen oder ähnliches. Man müsste eben mehr wissen, aber mit nem Makro sprich ner Function geht das auf jeden Fall.

Grüße tino

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: