هل من الممكن زيادة الحد 256 حرف في excel التحقق من صحة المنسدلة الصناديق ؟
سؤال
أنا خلق التحقق بشكل حيوي و قد ضرب 256 حرف الحد.بلدي التحقق من صحة تبدو شيئا مثل هذا:
Level 1, Level 2, Level 3, Level 4.....
هل هناك أي طريقة للحصول على جميع أنحاء حرف حد الأخرى ثم لافتا في النطاق ؟
التحقق بالفعل يجري إنتاجها في VBA.زيادة الحد الأقصى هو أسهل طريقة لتجنب أي تأثير على كيفية ورقة يعمل حاليا.
المحلول
أنا متأكد لا توجد وسيلة حول الحد 256 حرف جويل سبولسكي يفسر لماذا هنا: http://www.joelonsoftware.com/printerFriendly/articles/fog0000000319.html.
يمكنك ذلك باستخدام VBA للحصول على مقربة من تكرار وظيفة المدمج في التحقق من ترميز Worksheet_Change الحدث.وهنا وهمية حتى أعطيك فكرة.ربما كنت سوف ترغب في ريفاكتور إلى ذاكرة التخزين المؤقت ValidValues ، والتعامل مع التغييرات إلى نطاقات من الخلايا ، الخ...
Private Sub Worksheet_Change(ByVal Target As Range)
Dim ValidationRange As Excel.Range
Dim ValidValues(1 To 100) As String
Dim Index As Integer
Dim Valid As Boolean
Dim Msg As String
Dim WhatToDo As VbMsgBoxResult
'Initialise ValidationRange
Set ValidationRange = Sheet1.Range("A:A")
' Check if change is in a cell we need to validate
If Not Intersect(Target, ValidationRange) Is Nothing Then
' Populate ValidValues array
For Index = 1 To 100
ValidValues(Index) = "Level " & Index
Next
' do the validation, permit blank values
If IsEmpty(Target) Then
Valid = True
Else
Valid = False
For Index = 1 To 100
If Target.Value = ValidValues(Index) Then
' found match to valid value
Valid = True
Exit For
End If
Next
End If
If Not Valid Then
Target.Select
' tell user value isn't valid
Msg = _
"The value you entered is not valid" & vbCrLf & vbCrLf & _
"A user has restricted values that can be entered into this cell."
WhatToDo = MsgBox(Msg, vbRetryCancel + vbCritical, "Microsoft Excel")
Target.Value = ""
If WhatToDo = vbRetry Then
Application.SendKeys "{F2}"
End If
End If
End If
End Sub
لا تنتمي إلى StackOverflow