2016-09-02 3 views
0

Ich versuche, eine Formel in Excel/VBA einzurichten, die es mir erlaubt, einen Bereich von Zellen einzugeben und in einer Zelle auszugeben, ob es irgendwelche Konstanten in diesem Bereich gibt . Es ist wirklich einfach für eine Zelle zu tun, aber ich kann nicht scheinen, etwas für die Reihe zu arbeiten. Irgendwelche Ideen?Excel/VBA: finde Konstanten im Bereich mit einer Formel

dank viel, Jeremy

+2

* Irgendwelche Ideen? * Ist keine gute Idee. Du hast dies [vba] und [excel-vba] getaggt, welchen Code hast du ausprobiert und wo und wie ist es schief gelaufen? – pnuts

+0

Der Wert einer Zelle ist eine Konstante, wenn sie nicht von einer Formel abgeleitet ist. Wenn ich also richtig verstanden habe, möchten Sie wissen, ob es Zellen in einem Bereich gibt, die nicht leer sind und keine Formel haben? – jsheeran

+0

ja durch konstant meine ich "ist keine Formel". Also funktioniert die Funktion "isformula()" ab Excel 2013 grundsätzlich für eine einzelne Zelle, aber ich muss diese anpassen, damit ich sie auf einen Bereich anwenden kann. Praktisch was ich will, ist eine Formel, die mir sagt, ob es "harte Pfropfen" in einem Bereich von Zellen gibt, ohne die spezielle F5-Highlight-Konstanten-Methode machen zu müssen. Danke –

Antwort

2

-Code für UDF, die True für Zellen mit einem Wert und keine Formel zurück:

Option Explicit 

Public Function DetectConstantInRange(rng As Range) As Boolean 

    Dim rngCell As Range 
    Dim blnResult As Boolean 

    'assume false 
    blnResult = False 

    'iterate each cell in range 
    For Each rngCell In rng 
     'cell with value and no formula is constant 
     If Not rngCell.HasFormula And rngCell.Value <> vbEmpty Then 
      blnResult = True 
      'at least one constant so exit 
      Exit For 
     End If 
    Next rngCell 

    'return result   
    DetectConstantInRange = blnResult 

End Function 
+0

Vielen Dank Robin, das war genau das, was ich brauchte. –

Verwandte Themen