|
こんにちは。かみちゃん です。
>必ず『With Workbooks("test.xls").Sheets(Format(strName, "@"))』でエラーが出てしまいます。
何をされているのか、よくわからないのですが、
UserFormのあるブックとTest.xlsは別ブックなのですか?
どういうエラーメッセージが出るのですか?
それくらいは書きましょうね。
それとご提示のコード
> For i = 1 To 100
> 'シート名が存在しない場合もあるので
> On Error Resume Next
> Sheets(Format(i, "@")).Name = strName
> On Error GoTo 0
これだと、i が 2になったときに、エラーになるはずです。
なぜなら、i が 1のときにすでに strName の値にシート名を変更して、
i が 2のときに、また strName の値にシート名を変更しようとして、すでにシー
ト名が存在するからエラーになるはずです。
また、このコードも
>With Workbooks("test.xls").Sheets(Format(strName, "@"))
With Workbooks("test.xls").Sheets(strName)
でいいのではないでしょうか?
ただし、当然のことながら、test.xls に strName(数字か文字列か知りません
が)の値の名前になっているシートが存在することです。
|
|