Registriert seit: 25.09.2018
Version(en): 2016
18.06.2019, 20:40
(Dieser Beitrag wurde zuletzt bearbeitet: 18.06.2019, 20:40 von chrissy.)
Hallo,
wenn ich Zellen mit Zahlen markiere, dann bekomme ich, unten in der Statusleiste, die Summe.
Wenn ich jedoch dazwischen eine Fehlermeldung etc. habe, dann bekomme ich keine Summe unten rechts in der Statusleiste.
Gibt es eine Möglichkeit es zu ändern?
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi Chrissy,
das kann man nicht ändern. Ich vermute, die Summenanzeige beruht intern auf
Bei einer dazwischenliegenden Fehlermeldung gibt diese Formel ebenfalls nur eine Fehlermeldung aus; die Statusleiste nichts.
Arbeitsblatt mit dem Namen 'Tabelle1' |
| K |
2 | 6 |
3 | 8 |
4 | #NV |
5 | 14 |
6 | |
7 | #NV |
Zelle | Formel |
K7 | =SUMME(K2:K5) |
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016 |
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg |
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 25.09.2018
Version(en): 2016
Schade.
Ich dachte es gibt einen Zusatztaste die man drücken kann, bevor man Zahlen markiert. Damit Fehlerzellen ignoriert werden etc..
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Nö, no chance at all.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
trotzdem gäbe es eine Lösung. Du ignorierst die Fehlerzellen selber
Markiere nur die Zellen ohne Fehler. …
(STRG + Klick)
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 14.05.2017
Version(en): MS Office Prof. Plus 2016_32-Bit
19.06.2019, 09:38
(Dieser Beitrag wurde zuletzt bearbeitet: 19.06.2019, 09:47 von hddiesel.)
Hallo Chrissy,
mit einer vernünftigen Formel, entstehen keine Fehlerwerte.
Ein einfaches Beispiel, statt nur
=8/0Einen möglichen Fehler abfangen mitCode:
=WENNFEHLER(A2/B2;0)
=WENNFEHLER(8/0;0)Dann ensteht kein #DIV/0!, sondern 0 bei einem Berechnungsfehler der Formel und deine Statusleiste, liefert das gewünschte Ergebnis.
Gruß Karl
Registriert seit: 26.07.2017
Version(en): 365
Hallo chrissy,
ich benutze sehr häufig die Summe von markierten Zellen, darum habe ich mir dieses Makro auf Taste F12 gelegt, das mir diese Summe in die Zwischenablage kopiert:
Sub SummeMarkierterZellen()
Dim rngAktuell As Range
Dim SummeMarkierterZellen As Double
For Each rngAktuell In Selection.Cells
If Rows(rngAktuell.Row).Hidden = False Then
If IsNumeric(rngAktuell.Value) Then
SummeMarkierterZellen = SummeMarkierterZellen + rngAktuell.Value
End If
End If
Next
SetClipboard (SummeMarkierterZellen)
End Sub
Um ein Makro auf eine Taste zu legen, gib Folgendes im VBA-Projekt in "DieseArbeitsmappe" ein:
Code:
Application.OnKey "{F12}", "SummeMarkierterZellen"
Herzliche Grüße aus dem Rheinland
Jörg
[Windows 10, Microsoft 365]
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
dem TE wird das Makro aber nix in die Zwischenablage befördern, denn ihm fehlt was
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 26.07.2017
Version(en): 365
... upps ... stimmt. Die Clipboard-Funktionen liegen bei mir aus Übersichtsgründen in einem anderen Modul. Der Vollständigkeit halber:
Option Explicit
Private Declare Function OpenClipboard Lib "user32.dll" (ByVal hwnd As Long) As Long
Private Declare Function EmptyClipboard Lib "user32.dll" () As Long
Private Declare Function CloseClipboard Lib "user32.dll" () As Long
Private Declare Function IsClipboardFormatAvailable Lib "user32.dll" (ByVal wFormat As Long) As Long
Private Declare Function GetClipboardData Lib "user32.dll" (ByVal wFormat As Long) As Long
Private Declare Function SetClipboardData Lib "user32.dll" (ByVal wFormat As Long, ByVal hMem As Long) As Long
Private Declare Function GlobalAlloc Lib "kernel32.dll" (ByVal wFlags As Long, ByVal dwBytes As Long) As Long
Private Declare Function GlobalLock Lib "kernel32.dll" (ByVal hMem As Long) As Long
Private Declare Function GlobalUnlock Lib "kernel32.dll" (ByVal hMem As Long) As Long
Private Declare Function GlobalSize Lib "kernel32" (ByVal hMem As Long) As Long
Private Declare Function lstrcpy Lib "kernel32.dll" Alias "lstrcpyW" (ByVal lpString1 As Long, ByVal lpString2 As Long) As Long
Public Sub SetClipboard(sUniText As String)
Dim iStrPtr As Long
Dim iLen As Long
Dim iLock As Long
Const GMEM_MOVEABLE As Long = &H2
Const GMEM_ZEROINIT As Long = &H40
Const CF_UNICODETEXT As Long = &HD
OpenClipboard 0&
EmptyClipboard
iLen = LenB(sUniText) + 2&
iStrPtr = GlobalAlloc(GMEM_MOVEABLE Or GMEM_ZEROINIT, iLen)
iLock = GlobalLock(iStrPtr)
lstrcpy iLock, StrPtr(sUniText)
GlobalUnlock iStrPtr
SetClipboardData CF_UNICODETEXT, iStrPtr
CloseClipboard
End Sub
Public Function GetClipboard() As String
Dim iStrPtr As Long
Dim iLen As Long
Dim iLock As Long
Dim sUniText As String
Const CF_UNICODETEXT As Long = 13&
OpenClipboard 0&
If IsClipboardFormatAvailable(CF_UNICODETEXT) Then
iStrPtr = GetClipboardData(CF_UNICODETEXT)
If iStrPtr Then
iLock = GlobalLock(iStrPtr)
iLen = GlobalSize(iStrPtr)
sUniText = String$(iLen \ 2& - 1&, vbNullChar)
lstrcpy StrPtr(sUniText), iLock
GlobalUnlock iStrPtr
End If
GetClipboard = sUniText
End If
CloseClipboard
End Function
Herzliche Grüße aus dem Rheinland
Jörg
[Windows 10, Microsoft 365]