Set objsheet = bjExcel.ActiveWorkbook.Worksheets("Config_InputAllocation_Weekly")
Set objsheet2 = objExcel.ActiveWorkbook.Worksheets("Config_Project")
あなたはできませんアクティブの両方のシートを、設定してみてください。アクティブシートは1つだけです。しかし、それらをアクティブにする必要はありません。それは
Msgbox myWs1.Cells(1,1).value
Msgbox myWs2.Cells(1,1).value
その後、他の問題は、あなたがサブsearchdata()
が定義されていることですが、:そして、あなたは簡単に彼らがアクティブであるかどうか、両方のシートからデータを呼び出すことができます
Dim objExcel as Object
Set objExcel = CreateObject("Excel.Application")
Dim myWb as workbook, myws1 as worksheet, myWs2 as worksheet
Set myWb = objExcel.Workbooks.Open("C:\Users\ABC\Documents\NSL\Automation Macro\NSL_DM_Tracker.xlsm")
Set myWs1 = myWb.Worksheets("Config_InputAllocation_Weekly")
Set myWs2 = myWb.Worksheets("Config_Project")
:次のテクニックを使用しますあなたのCommandButton1_Click()
Sub内で呼び出されていません。
はさらにそれは、あなたのコードの一番上にこの行を入れて、明示的なオプション設定を使用します。
Option Explicit
これはあなたのコードをデバッグするのに役立ちます。 最後に、あなたのサブsearchdata()
にワークシートが定義されていません。したがって、どのユーザ(myWs1またはmyWs2)がいつどのように使用されるかはわかりません。
幸運、 ヴィクター
DIMが整数 LASTROW =シート( "Config_InputAllocation_Weekly")としてカウント文字 としてワーク 薄暗いLASTROWとして文字列 薄暗いWSとして
サブsearchdata() 薄暗いeRowパラメーター。細胞(行Sheet1Range( "A5")= Sheets(1).End(xlUp).Row シート( "Config_InputAllocation_Weekly")の場合セル(x、3)= Sheet1.Range( "B2")Then Sheet1.Range "Config_InputAllocation_Weekly")セル(x、3) Sheet1.Range( "B5")= Sheets( "Config_InputAllocation_Weekly")セル(x、7) Sheet1.Range( "C5")=シート( "Config_InputAllocation_Weekly")セル(x、8) 終了場合 エンドサブ –
誰でもこの問題を解決できますか? –