excel Cm+Bnという式でBn=空白の場合、式がerrorになる。SUM(Cm,Bn)にすればerrorにならず、Cmの値が取得できる。 これを使えば、グラフを作るケースで重宝する。
2025年8月21日木曜日
2025年8月12日火曜日
2025年8月10日日曜日
vba debug のノウハウのあれこれ
- vbaのデバッグ・ウィンドウでの便利なコマンド
- ?ActiveWorkBook.Name
- ?ActiveSheet.Name
- ?Sheets("Sheet_Name").CurrentReagion.address
- .copyすると、ActiveSheetが切り替わる。
- wb.closeするとひとつ前のActiveSheetになる。ちゃんと、スタックされている。
- 今どこシートがアクティブなのかを意識しないと、プログラムが暴走しだす。
- ちょいちょいDebug.printせよ。
- 「インデックスが有効な範囲にありません。」が出たら、シート名やブック名などのスペルが間違えている。スペルを確認せよ。
- 列の削除は、一遍にやる。Columns("A:A,C:C,E:E,F:J").Delete そして、その前にフィルターは外しておけ。フィルターがかかっていると、怪奇現象を誘発する。
- 不要な列は非表示にしてコピペせよ。
- menuでの言い方 Excelブック(.xlsx) Excel97-2003ブック(.xls)
- vlookupでの列コピーは、application.vlookupを使う。参照シートをコピーし、VLOOKUP関数を埋め込むのではなく・・・なんでやろ?
- 「このブックには更新できないリンクが1つ以上含まれています。」というメッセージを抑止するにはopenする前にUpdateLinks:=Falseを指定する。openをApplication.DisplayAlerts = Falseとpplication.DisplayAlerts = trueで挟んでおくという手もある。
登録:
投稿 (Atom)