Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1548to1552
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
Inhaltsverzeichnis

Wenn Diag. Rahmen Formartierung keine Formelberech

Wenn Diag. Rahmen Formartierung keine Formelberech
04.04.2017 13:52:05
Dirk
Hallo zusammen,
habe ein Problem, habe eine Liste mit Zahlreichen formatierten Rahmen (X). Nun soll wenn ich eine Formel schreibe, bei diesen Felder keine Ergebnis errechnet werden.
Ist so etwas möglich ?
https://www.herber.de/bbs/user/112627.xlsx
Danke

21
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: unklar, was Du meinst bzw. Du anstrebst owT
04.04.2017 14:35:33
...
Gruß Werner
.. , - ...
nur mit VBA
04.04.2017 17:59:30
KlausF
Hallo Dirk,
das ist nur mit VBA möglich
Gruß
Klaus
AW: nur mit VBA
05.04.2017 06:36:04
Dirk
Hallo Klaus,
hallo @all
ok...ich habe natürlich nur ein kleinen Auszug davon hier reingestellt. Die Tabelle hat insgesamt ca. 500 ge -X- te Felder. Die Zahl 6 kommt aus einem anderen Tabellenblatt, kann aber variieren zwischen 1 und 15. Ist das Schwierig per VBA dies um zusetzen?
Gruss
DIRK
unkomplizierter ohne Formatierung
05.04.2017 07:10:01
Matthias
Hallo
Probiers doch mal so:
Tabelle1

 ABCDEFGHIJKLMNO
1 x     xx    xx
2Rubr. 1, 9, 17, 25, 33, 41, 49 66666  6666  

Formeln der Tabelle
ZelleFormel
B2=WENN(B1="x";"";Tabelle2!$A$1)
C2=WENN(C1="x";"";Tabelle2!$A$1)
D2=WENN(D1="x";"";Tabelle2!$A$1)
E2=WENN(E1="x";"";Tabelle2!$A$1)
F2=WENN(F1="x";"";Tabelle2!$A$1)
G2=WENN(G1="x";"";Tabelle2!$A$1)
H2=WENN(H1="x";"";Tabelle2!$A$1)
I2=WENN(I1="x";"";Tabelle2!$A$1)
J2=WENN(J1="x";"";Tabelle2!$A$1)
K2=WENN(K1="x";"";Tabelle2!$A$1)
L2=WENN(L1="x";"";Tabelle2!$A$1)
M2=WENN(M1="x";"";Tabelle2!$A$1)
N2=WENN(N1="x";"";Tabelle2!$A$1)
O2=WENN(O1="x";"";Tabelle2!$A$1)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Gruß Matthias
Anzeige
AW: unkomplizierter ohne Formatierung
05.04.2017 07:17:47
Dirk
Leider ist es kein Zeichen "X" sondern eine Formatierung (Rahmen) Diagonale
immer noch unklar, was Du meinst ...
05.04.2017 06:53:50
Matthias
Hallo
Siehe auch Nachfrage von Werner(neopa C)
es ist immer noch unklar, was Du meinst ...
Zitat
Nun soll wenn ich eine Formel schreibe, bei diesen Felder keine Ergebnis errechnet werden
Was soll denn in der Zelle stehen, wenn Du eine Formel eingibst?
Gruß Matthias
AW: immer noch unklar, was Du meinst ...
05.04.2017 07:15:11
Dirk
Hallo Mathias,
in den ge- X- ten Felder entweder eine null oder leer.
AW: immer noch unklar, was Du meinst ...
05.04.2017 07:29:53
Dirk
Hier ein wenig Detaillierter, um so zu erkennen wieviel ge-X-te Rahmen es gibt:
https://www.herber.de/bbs/user/112648.xlsx
Davon haben wir 20 solcher Päckchen untereinander
Anzeige
AW: immer noch unklar, was Du meinst ...
05.04.2017 08:29:08
EtoPHG
Hallo Dirk,
Die Anforderung ist nicht klar definiert.
1. Eine Formel kann alles Mögliche sein und alle lassen sich nicht so modifizieren, dass sie anstelle des Resultats eine 0 oder eine Nullstring zurückgeben.
2. Mit einem relativ einfachen Code im Tabellenblatt könnte man höchstens erreichen, dass zwar Werte aber keine Formeln in eine mit Diagonalen formatierte Zellen geschrieben werden können. Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count = 1 Then If Target.HasFormula Then If Target.Borders(xlDiagonalDown).LineStyle = xlContinuous And _ Target.Borders(xlDiagonalUp).LineStyle = xlContinuous Then MsgBox "Sie dürfen hier keine Formel eingeben!", vbCritical Application.Undo End If End If End If End Sub
3. Wenn schon eine Formel in der Zelle und diese nachträglich mit Diagonalen versehen wird, soll die Formel dann gelöscht werden? Das ist praktisch nicht zu erreichen (auch nicht mit VBA), da eine Formatierung kein Change-Ereignis auslöst.
Gruess Hansueli
Anzeige
AW: immer noch unklar, was Du meinst ...
05.04.2017 09:24:22
Dirk
Hallo @all,
okay...dann versuche ich nochmals die Anforderung etwas klarer zu definieren. In der Liste sind Wochentage aufgeführt, an den ge -X-ten stellen sind Mitarbeiter nicht anwesend. Ich hatte schon ein Zählerfunktion eingebaut:
Private Sub Workbook_Open()
Application.OnKey "{F9}", "DeinMakroName"
Application.OnKey "{F3}", "DeinMakroName2"
End Sub
Alle Päckchen zusammen untereinander sollen mir dann sagen wie viele Mitarbeiter nun an diesen Tag anwesend sind. Die obige Funktion darf natürlich nicht an den Diagonale Tage hochzählen.
Also würden in den ganzen Zeile 3 mit dem Hochzählfunktion z.B. überall eine 8 erscheinen und nun müsste im Nachgang diese Zahlen in der Zellen mit ge -X- ten Felder wieder rausgehen oder erst gar nicht hochzählen.
Ich hoffe nun verständlich genug, ansonsten einfach Nachfragen :-)
Anzeige
Unsinnige Implementierung der Anforderung...
05.04.2017 10:03:54
EtoPHG
Hallo Dirk,
Das ist Realisierung nach dem Prinzip "Von hinten durch die Brust, ins Auge!"
Wenn ich so etwas einfaches Implementieren will, dann schreibe ich doch bei den nicht Anwesenden eine Null, bei den ganztägig Anwesenden eine 1 und bei teilzeitig Anwesenden z.B. 0,5 in die Zelle. Damit kann ich mit einer einfachen Summenformel feststellen, wieviel Ressourcen an einem Tag zur Verfügung stehen. Mit zusätzlichen bedingten Formatierungen kann ich das ganze dann ggf. noch 'schöner gestalten'. Du gehst genau in der umgekehrten Reihenfolge vor: Zuerst alles schön und dann über Handstände, Verrenkungen, VBA und weiss nicht was versuchen die Grundanforderung zu erfüllen. Das führt zu unwartbaren, nicht verständlichen, fehleranfällige Excelmappen, die am Schluss von niemandem zu gebrauchen sind!
Gruess Hansueli
Anzeige
AW: Unsinnige Implementierung der Anforderung...
05.04.2017 10:53:39
Dirk
Hallo Hansueli,
natürlich...hast Du auf dem ersten Blick recht. Das Tabellenblatt wurde letztes Jahr bereits entworfen und da wurde über die Präsenzen noch nicht nachgedacht und ich dachte man könnte um nicht wieder von Vorne anfangen zu müssen, dieses Tabellenblatt benutzen.
Gruss
Dirk
ist doch erledigt, oder?
05.04.2017 11:03:10
Matthias
Hallo
Was ist denn da noch "offen"?
Hansueli hat doch ein funktionierenden Code vorgeschlagen.
Grußß Matthias
AW: Unsinnige Implementierung der Anforderung...
05.04.2017 11:03:45
EtoPHG
Hallo Dirk,
Warum du deinen Beitrag offen lässt, ist mir unklar.
...aber sei's drum, ich kann keine zusätzlichen Hilfestellungen zum Thema leisten...
Gruess Hansueli
Anzeige
AW: Unsinnige Implementierung der Anforderung...
05.04.2017 11:12:11
Dirk
Hallo Hansueli,
ich habe natürlich Deine VBA versucht,....es kommt auch die Meldung in einem Info Fenster keine Formel in diesen Feld zugelassen. Löst aber leider nicht mein Problem :-(
AW: Unsinnige Implementierung der Anforderung...
05.04.2017 11:25:04
Matthias
Hallo
Dann mach so:
Code in ein allgemeines Modul
und einem Button auf dem relevanten Registerblatt zuweisen.

Option Explicit
Sub tt()
Dim Rng As Range
Application.ScreenUpdating = False
For Each Rng In Range("B3:OG10")
If Rng.HasFormula Then
If Rng.Borders(xlDiagonalDown).LineStyle = xlContinuous And _
Rng.Borders(xlDiagonalUp).LineStyle = xlContinuous Then
Rng.ClearContents
End If
End If
Next
MsgBox "fertig"
End Sub
Das ist Hansuelis Code etwas modifiziert.
Gruß Matthias
Anzeige
AW: Unsinnige Implementierung der Anforderung...
05.04.2017 12:01:45
Dirk
Hallo Matthias,
jaaaaa.....da kommen wir der Sache schon näher :-) ....geht das auch wenn es dort keine Formel(Rng.HasFormula) drin steht, sondern nur eine Zahl unter dem ge-X-ten Feld. Da ich Hochzähle mit einem Makro/VBA
Dann wäre das perfekt !!!
AW: Unsinnige Implementierung der Anforderung...
05.04.2017 12:08:46
Matthias
Na dann so
Option Explicit
Sub tt()
Dim Rng As Range
Application.ScreenUpdating = False
For Each Rng In Range("B3:OG10")
If Rng.Borders(xlDiagonalDown).LineStyle = xlContinuous And _
Rng.Borders(xlDiagonalUp).LineStyle = xlContinuous Then
Rng.ClearContents
End If
Next
MsgBox "fertig"
End Sub
Gruß Matthias
Anzeige
AW: Unsinnige Implementierung der Anforderung...
05.04.2017 12:11:57
Dirk
PERFEKT!!! DANKEEEEEEEE !!!!!!!
Dank geht eher an Hansueli ... owT
05.04.2017 12:19:54
Matthias
AW: Unsinnige Implementierung der Anforderung...
05.04.2017 12:08:09
Dirk
Hallo Matthias,
jaaaaa.....da kommen wir der Sache schon näher :-) ....geht das auch wenn es dort keine Formel(Rng.HasFormula) drin steht, sondern nur eine Zahl unter dem ge-X-ten Feld. Da ich Hochzähle mit einem Makro/VBA
Dann wäre das perfekt !!!

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige