|
▼kanabun さん:
早速のご回答ありがとうございます。
Set r = workbooks("book2.xls").Worksheets("給与マスター").Range("A3").currentregion
Set r = Intersect(r, r.Offset(1))
ご指摘のところを修正したところ、初回「インデックスが有効範囲ではありません」とメッセージがでたので、book2をopenしSheets"給与マスター"を非表示にして、book1、Sheets"入力票"をactiveにして、userformコード上で実行してところ、うまくできました。「できた!!!」と喜び、一旦保存、閉じてから、book1を開き、同じ手順でbook2も開き、userformコード上で再試行したところ「このプログラムは不正な処理をしたので強制終了します」とのメッセージがでて、excelを強制終了してしまいました。
一旦閉じては再度試行を試みましたが、同じ結果です。
book1にSheets"仮マスター"を追加して、workbooks("book2.xls").Worksheets("給与マスター").Range("A3").currentregion部分をコピーして、
Set r = Worksheets("仮マスター").Range("A3").currentregion
Set r = Intersect(r, r.Offset(1))
と修正して試してみましたが、強制終了されます。
当方excel97を使用しており、intersectに対応していなかったのか、あるいはbook2のopen、参照の仕方が不正だったのでしょうか??
解決策はありませんか???
|
|