2017-02-22 15 views
0

Есть некоторые проверенные ячейки. Я должен проверить, что ячейки имеют валидацию или нет. Если он имеет проверку, я должен получить диапазон его проверки. Есть ли какой-нибудь метод? Я попробовал много формул, но это было безуспешно.Как получить адрес подтверждения?

Sub checkForValidation() 
Dim cell As Range, v As Long 
adatOszlop = 9 
todoszamlalo = 0 
celOszlop = 15 
Set lista = Sheets("Munka1").Range("R:R") 

    lista.Name = "Szamok" 
    For szamlalo = 4 To 25 
     v = 0 
     On Error Resume Next 

     v = Cells(szamlalo, celOszlop).SpecialCells(xlCellTypeSameValidation).Count 
     On Error GoTo 0 

     If v = 0 Then 
      Debug.Print "No validation" 
      Cells(szamlalo, 10) = "No validation" 
     Else 
      Debug.Print "Has validation" 
      Cells(szamlalo, 10) = "Has validation" 

       If Not lista.Find(Cells(szamlalo, adatOszlop).Value) Is Nothing Then 
        Dim rng As Range 
        Dim ws As Worksheet 

        Sheets("Munka1").Cells(szamlalo, 14) = "ok" 
        Sheets("Munka1").Cells(szamlalo, celOszlop) = Cells(szamlalo, adatOszlop).Value 
       Else 
        Call selectsub(Cells(szamlalo, adatOszlop).Value) 
       End If 
     End If 
    Next 
    'End 
End Su 

б

ответ

1

Этот маленький суб проверяет активную ячейку и дает диапазон списка DV или список DV пунктов или говорит вам нет DV:

Sub IsIt() 
    On Error GoTo trap 
     MsgBox ActiveCell.Validation.Formula1 
    On Error GoTo 0 
    Exit Sub 
trap: 
    MsgBox "no data validation" 
    On Error GoTo 0 
End Sub 
+0

И как я могу присвоить значение переменной ActiveCell.Validation.Formula1 переменной (переменной диапазона)? – Daniel