|
▼neptune さん ありがとうございます
なぜだか、うまく動かせずに
ググッたり、試したりしているうちに、大変遅くなってしまいました
結局、下記でなんとか動きましたが
Sub 一括処理2(Optional ByVal pstr As String)
のとき
'xls.Run "一括処理2" '←NG 引数は省略できません。
となってしまいます
オプショナルだから引数は無しでもいいような気がするのですが・・・
アドバイス頂けると助かります
よろしくお願い致します
アクセス標準モジュール
Public Sub run_excel2()
'参照設定時
'Dim xls As Excel.Application
'Dim wkb As Excel.Workbook
'Dim wks As Excel.Worksheet
'Dim rng As Excel.Range
'Dim strSQLstring As String
'レイトバインド時(参照設定無し)
Dim xls As Object
Dim wkb As Object
Dim wks As Object
Dim rng As Object
Dim strSQLstring As String
Dim pstr As String
pstr = "ac_str"
Set xls = CreateObject("Excel.Application")
xls.Visible = True '###
Set wkb _
= xls.Workbooks.Open( _
Filename:=CurrentProject.Path & "\test_01.xls")
xls.Run "一括処理1" '←OK 引数なし 動きます
'xls.Run "一括処理2" '←NG 実行時エラー '449':引数は省略できません。
xls.Run "一括処理2", pstr '←OK 引数有りなら動きます
' wkb.Close SaveChanges:=True
' xls.Quit
' Set wks = Nothing
' Set wkb = Nothing
' Set xls = Nothing
End Sub
エクセル標準モジュール
Public Sub 一括処理1()
Dim exl_msg As String
exl_msg = "exl固定"
MsgBox exl_msg
End Sub
Sub 一括処理2(Optional ByVal pstr As String)
'Sub 一括処理2(pstr As String)
MsgBox pstr
End Sub
|
|