我在一系列允許用戶從一組日期中進行選擇的單元格上使用數據驗證。日期基於另一個工作表,基本列爲Today(),Today() - 1,Today() - 2等,一直到-28。這使下拉選擇當前\動態。 雖然我希望做的是使單元格中的每個日期都大於先前的單元格日期,但我只知道如何使用列驗證來完成此操作,而且我顯然已經使用它來生成動態日期列表。 任何想法? 謝謝 Sample image of spreadsheet使用日期下拉菜單並進行列驗證
0
A
回答
0
你不能這樣做使用數據驗證。但是,您可以使用VBA執行此操作。按Alt + F11激活VBA編輯器,然後雙擊要放置該驗證的工作表,並在其中輸入以下腳本。並保存你的Excel,那麼你將有你的驗證到位。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim OldValue As String
Dim NewValue As String
Dim PrevCell As String
Dim CurRow As Integer
Dim CurCol As Integer
On Error GoTo Exitsub
CurRow = Target.Row
CurCol = Target.Column
If CurRow = 1 Or CurCol = 1 Then GoTo Exitsub ' if current row not equal to row 1 or current column = 1, no need to validate
Application.EnableEvents = False
NewValue = Target.Value
Application.Undo
OldValue = Target.Value
Target.Value = NewValue
PrevCell = Cells(CurRow, CurCol - 1).Value
If Trim(NewValue) = "" Then GoTo Exitsub
If (PrevCell > NewValue) Then
MsgBox "Date is less than previous cell", vbCritical, "Error"
Target.Value = OldValue
GoTo Exitsub
End If
Exitsub:
Target.NumberFormat = "DD/MMM;@"
Application.EnableEvents = True
End Sub
您可能需要根據您的要求
If CurRow = 1 Or CurCol = 1 Then GoTo Exitsub
相關問題
- 1. 使用日期過濾下拉菜單到下拉菜單
- 2. 使用Javascript驗證HTML下拉菜單?
- 3. Jquery下拉菜單驗證
- 4. 驗證下拉菜單
- 5. 驗證下拉菜單JavaScript
- 6. Jquery下拉日期驗證
- 7. 下拉菜單日期
- 8. JavaScript驗證日期依賴的下拉菜單
- 9. 使用Angular Js進行下拉驗證
- 10. 使用javascript進行日期驗證
- 11. 使用日期過濾所有下拉菜單到下拉菜單
- 12. 驗證輸入和下拉菜單
- 13. JSF selectOneMenu:驗證兩個下拉菜單
- 14. 驗證在PHP爲下拉菜單
- 15. 如何驗證多選下拉菜單?
- 16. 爪哇腳本下拉菜單驗證
- 17. 驗證下拉菜單中的PHP
- 18. 使用ASP.NET驗證器進行日期驗證
- 19. 使用驗證控件對日期進行驗證?在Asp.net中?
- 20. 使用ASP.NET驗證器進行日期驗證
- 21. 如何在使用jQuery的表單中驗證下拉菜單?
- 22. 使用jquery進行日期驗證,防止輸入yeterdays日期。
- 23. JavaScript日期對象的下拉菜單?
- 24. 使用下拉菜單進行更新陣列軌道
- 25. PHP - 使用下拉菜單對列表進行排序
- 26. 從下拉框中檢索並驗證日期javascript
- 27. 如何使用JavaScript驗證GridView內的下拉菜單
- 28. 使用Ajax驗證動態下拉菜單
- 29. 如何使用selenium webdriver從下拉菜單中選擇日期?
- 30. 出生日期使用ng選項下拉菜單
請出示樣品擅長改變以下語句中的行數和列。 – Karpak
Karpak - 截圖夠了嗎? – JazzyN
是的,它應該是足夠的 – Karpak