そんなわけで今更VBAを始めました。
ExcelVBAです。
プログラムをなんだら系統のはなしというのがですね、
実はね、中学校のベーシック以来です。
あん時もすごい苦しんだんだけど今も苦しんでいる。いや苦しい本当苦しい。
中学の時はどうしても乗り越えられんエラーが有って教師に聞いたら仕様ですって言われたという。
実際あれは多分仕様というかバグであった。死ぬほど線引いて絵を書く課題だったので
おなじことしかしてないしNe☆
私はダランダランとものを考えてるいわゆるダメ人間なので、
あらゆることが適当なので、こうな、まともな命令をしないと動かないってやつが苦手で、
したがって動かにゃいんですねこれが。
だがしかしまあやってみよういろいろ事情があるしということで、
A表とB表があってだな。見た目がほぼ一緒の。
でそのシートが入ってるExcelブックに別のシートが…
私が渡された時点で既に20枚くらいあってね。
へらせないというか一枚じゃないとやだやだだそうです。
これをスリム化するのの一貫なんですけどもっとガツンと減って苦情が出ない方法あったら
誰か教えてください。死ぬ。
で、やったことなんですけどね
とりあえず
A表とB表のタイトルをキーにして、If then Elseしてみた。
日本語で書くと
もしセル1があああーの場合、
こことここの線を消して、その範囲結合して、文字入れて
別のここには線を引いてよね!
そうじゃなかったら
ここの範囲の文字消して、範囲結合解除して、こことここに線書いて、
別のここの線は消してよね!
こういうやつ。
こんな単純な話なのにだな。
まずやたらと、.Borderクラスの指定に困ってですね。
何が困ったって、日によってエラー吐いてくれるんです意味がわからん。
色々やりすぎて何が起きたのかわからないんですけど何とかなりました。
そんなわけでメモと反省
★反省
パブリックで動かしたり意味もわからずぷらいべーとにしてみたりしてたのが
いかんかったのかも。
書いた文言はよく見ましょう。現場百回
☆メモ
--ボタン起動のサブルーチンのError回避
a.プロシージャの頭に selection.select
b.コマンドボタンのTake Focus On ClickをOFF
+-2つを総合すると、普通にしてたらボタンにフォーカス持っていかれるって事。
そもそもフォーカスとはなんぞや
引用元:http://www.keep-on.com/excelyou/2001lng4/200109/01090213.txt
--印刷プレビュー後味噌っかすに重たくなる
→印刷の破線が一因なので消す
+-知らんとわからん系ではないのかな。
引用元:http://www.vbalab.net/vbaqa/c-board.cgi?cmd=ntr;tree=49165;id=excel
もう少しprivate Subについて詳しく(手元の本には乗ってない、マジで)
参考:http://www.k1simplify.com/vba/tipsleaf/leaf312.html
あと原因不明で3回ほど落ちたので、自動保存の場所(物臭なのでスーパーデフォルト)
→C:\Documents and Settings\ユーザ名\Application Data\Microsoft\Excel\