Zwischenergebnis kann n. eingefügt werd
21.01.2022 18:51:00
Peter
Dieser Code hat lange Zeit funktioniert. Nun erhalte ich in der Serverumgebung nur noch zwei umrahmte Fragezeichen, die ich in der Zielzeile sehe, in der Bearbeitungszeile ist optisch nichts ersichtlich.
Debug.Print AutoVal ganz unten in der Codezeile schreibt mir das richtige Ergebnis in den Direktbereich - doch mit Ctl+V kann ich das Ergebnis nicht in eine Zelle schreiben.
Hingegen funktioniert der Code auf dem lokalen Notebook einwandfrei.
Was könnte der Grund sein?
Gruss, Peter
Option Explicit
Public Sub CopyStatusFunction()
'Code via Herber.de erhalten von Kl@us-M. am 29. Januar 2008
'Code von T.Ramel - im VBA Menu Extras muss Verweis auf Forms 2.0 Object Library eingestellt sein
Dim Obj As New DataObject
Dim ctl As CommandBarControl
Dim AWF As Object
Dim AutoVal As Double
Dim intFormula As Integer
Dim c As Range
Set AWF = Application.WorksheetFunction
intFormula = 0
For Each ctl In Application.CommandBars("AutoCalculate").Controls
intFormula = intFormula + 1
If ctl.State 0 Then
Exit For
End If
Next ctl
If ActiveSheet.ProtectContents = False Then
Set c = Selection.SpecialCells(xlCellTypeVisible)
Else
Set c = Selection
MsgBox "Da Tabelle geschützt ist, werden" & vbCrLf & _
"auch Werte aus allfällig ausge-" & vbCrLf & _
"blendeten Zellen innerhalb der" & vbCrLf & _
"Markierung mitberücksichtigt."
End If
Select Case intFormula
Case 2
AutoVal = AWF.Average(c)
Case 3
AutoVal = AWF.CountA(c)
Case 4
AutoVal = AWF.Count(c)
Case 5
AutoVal = AWF.Max(c)
Case 6
AutoVal = AWF.Min(c)
Case 7
AutoVal = AWF.Sum(c)
AutoVal = Round(AutoVal, 2)
End Select
Obj.SetText AutoVal
Obj.PutInClipboard
Set Obj = Nothing
Debug.Print AutoVal
End Sub