2017-02-17 7 views
0

検索ボックスに入力された値がsheet1列b10を参照している場合、userformに検索ボックスがあり、次にb10行を現在行としてコードする方法があります。あなたのロジックが正しくない私はアクティブフォームを選択してユーザーフォーム内のデータを更新するVBAコード

If Trim(Me.TextBox_Search_Data.Value) = "," Then 
ActiveCell = Cells(Me.TextBox_Search_Data) 
ActiveCell.Activate 

CurrentRow = ActiveCell.Row 

のように、これをコード化している。しかし、このコードは、エラーを与えることもなく、現在の行に

+0

なぜあなたはActivate'何か 'しようとしている?の下に試してみてください'Select'と' Activate'はマクロレコーダーコードに適しています。手作りのVBAコードは通常、何かを「アクティブ化」する必要はありません。 –

答えて

0

を活性化もされていません。 Ifの条件では、テキストボックスに "、"が表示されます。コンマがあれば、テキストボックスはセルの値を持つことができません。 Ifの条件で、他のテキストボックス名を使用する必要があるかもしれません。

Private Sub CommandButton1_Click() 
    Dim wb As Workbook 
    Dim sh As Worksheet 

    Set wb = ActiveWorkbook ' best is to use Set wb = Workbooks("workbookname.xlsx") 
    Set sh = wb.Sheets("Sheet1") ' you may use Set sh = wb.Sheets("Sheet1") 

    If Trim(Me.TextBox_Search_Data.Value) <> "," Then 
     sh.Range(Trim(Me.TextBox_Search_Data.Value)).Activate 
    End If 

    Set sh = Nothing 
    Set wb = Nothing 
End Sub 
関連する問題