我抄,改變VBA的負荷,試圖適應它爲我的電子表格和 我設法所有過濾,複製粘貼,創建圖表的東西,但我有麻煩(我是VBA編碼新手)。輸入框搜索詞,然後行復制到另一個工作表
在Sheet1我的所有報廢的原因(過濾從最大到最小)的列表。 我需要搜索的Sheet 1中頂部5廢料原因所有實例Sheet 2中(細節的負載),然後片材2的整個行/ s的複製到Sheet。
我抄,改變VBA的負荷,試圖適應它爲我的電子表格和 我設法所有過濾,複製粘貼,創建圖表的東西,但我有麻煩(我是VBA編碼新手)。輸入框搜索詞,然後行復制到另一個工作表
在Sheet1我的所有報廢的原因(過濾從最大到最小)的列表。 我需要搜索的Sheet 1中頂部5廢料原因所有實例Sheet 2中(細節的負載),然後片材2的整個行/ s的複製到Sheet。
如果我有一個已知的連續搜索的值,我用的是這樣的: l_locate_value_row
這些都是它的參數:
target
值我正在尋找,例如vityata
target_sheet
片我在看(應與vba_name)
Optional l_col As Long = 1
柱,其中我尋找
Optional l_values_found As Long = 1
如果我尋找第二個值,而不是第一個,我會給2.
因此l_locate_value_row("vityata",tbl_main)
將返回的第一行,其中vityata
被發現。如果未找到該值,則返回-1
。
Public Sub Decrement(value_to_decrement, Optional l_minus As Long = 1)
value_to_decrement = value_to_decrement - l_minus
End Sub
Public Function l_locate_value_row(target As String, target_sheet As Worksheet, Optional l_col As Long = 1, Optional l_values_found As Long = 1) As Long
For Each my_cell In target_sheet.Range(target_sheet.Cells(l_col, 1), target_sheet.Cells(Rows.Count, l_col))
If target = my_cell Then
If l_values_found = 1 Then
l_locate_value_row = my_cell.Row
Exit Function
Else
Call Decrement(l_values_found)
End If
End If
Next my_cell
l_locate_value_row = -1
End Function
那麼...你有什麼特殊問題?你有什麼嘗試,你在哪裏難倒?你是否搜索過「InputBox」和「Range.Find」? –