[英]VBA Excel Scanning Range of Cells and Filling With ComboBox Selection
我有一個電子表格,主要由 12 張對應於 1 月至 12 月的工作表組成。 我試圖根據 TextBox 日期的輸入和 ComboBox 值的選擇在特定日期填充工作表。 每張紙都有 6 周的單獨范圍。 我希望掃描特定日期的所有范圍,並使用基於 ComboBox 選擇的值填充從找到的值向下的 14 個單元格。 NewYearsHoliday 是 MM/DD/YYYY 格式的字符串值,相當於正在掃描的值單元格。 被掃描的單元格是 Excel 中的日期格式。 范圍對應於顯示日期的單元格。 ComboBox 填充了一個基於另一個工作表上的 OffSet 值的 DefinedName 選項列表。
Sub Holiday()
'Select Sheet
Sheets("Jan").Select
'Scan Cells for Dates Within Range
For Each Cell In ActiveSheet.Range("B3:H3,B19:H19,B35:H35,B51:H51,B67:H67,B83:H83")
'Set Column Value Based On ComboBox Selection
If Cell.Value = NewYearsHoliday Then
Cell.Select
ActiveCell.Offset(1, 0).Resize(14, 1).Select
Selection.Value = ComboBoxNewYears.Value
End If
Next
End Sub
我想允許用戶使用 MM/DD 格式在 TextBox 中指定日期我將把它與另一個 TextBox 中選擇的 Year 結合起來,然后他們可以從 ComboBox 中選擇一個值,當他們選擇應用時,它將填充相應的列具有選定值的工作表。
我知道元旦不會移動,但這是概念代碼的證明,將在一年中的所有假期中復制。 任何人都可以分享有關為什么我的代碼沒有按預期填充的任何意見嗎?
謝謝各位大佬的建議。 我發現我的代碼有兩個問題。
Sub Holiday()
'Select Sheet
Sheets("Jan").Select
'Scan Cells for Dates Within Range
For Each Cell In ActiveSheet.Range("B3:H3,B19:H19,B35:H35,B51:H51,B67:H67,B83:H83")
'Set Column Value Based On ComboBox Select
If Cell.Value = NewYearsHoliday Then
Cell.Select
ActiveCell.Offset(1, 0).Resize(14, 1).Select
Selection.Value = NewYearsHolidaySelection
End If
Next
End Sub
作為參考,NewYearsHoliday 和 NewYearsHolidaySelection 變量是基於 TextBox 和 ComboBox 的值在 CommandButton 按下時設置的字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.