AddSheet()は名前だけ見ると新規シートを追加する関数のようなのだが、
既存のファイルを読み込んでシートとして追加するものだということがわかった。
なんで単純にシートを追加する関数が無いんだ。それぐらいあってもいいと
おもうのだが、開発側の手抜きではないか?!それともくまぷーのヘルプの見方が
悪いだけなのか?それならば一太郎Webフォーラムにでも「教えてください」と
投稿すれば悪児さんやきっちーさんが教えてくれるかもしない(^^ゞ
うだうだ言っていても方ないので使いたくはなかったのだがPushKeys()による
キー転送でシートを追加することにした。下がそのコードだ。
PushKeys("#F{DOWN}{DOWN}{DOWN}{DOWN}{DOWN"\\
& "}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}"\\
& "{DOWN}{RIGHT}{ENTER}#N")
これで取り敢えず新規シートは追加することが出来た。そこでくまぷーは
追加されたシートの名前が「2007年2月」になるように下のコードを書いた。
PushKeys("#F{DOWN}{DOWN}{DOWN}{DOWN}{DOWN"\\
& "}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}"\\
& "{DOWN}{RIGHT}{ENTER}#N")
ChangeCurrentSheet( "Sheet" & %Str )
%Str=GetSheetCount( )
CurrentSheetItem("2007年" & %Str & "月")
すると不思議なことに一枚目のシートの名前をデフォルトの「Sheet1」のままに しておくと正常に動作するのだが「2007年1月」に変更してマクロを実行すると 誤動作してしまうのだ。マクロのコードを全然変更しないで「Sheet1」の名前を ちょっといじっただけで誤動作してしまうのだ・・・(?_?)。 いったい、どういう内部構造になっているのだろう。 |
手強し、ジャストシステム!! |
マクロ実行前にデフォルトに戻しておけばいいじゃん!! そして実行後に名前を再設定する・・・
かなりドタバタしているけれど取り敢えずこれで動く・・・。 でもまたまた基本的な問題が・・・ ジャストシステムは楽しませてくれるなぁ・・・ |
コメント