• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBEのマクロを修正したいのです。)

エクセルVBEのマクロ修正方法 | セルを画像として保存

このQ&Aのポイント
  • エクセルVBEのマクロを使ってセルを画像として保存する作業を行っていますが、ファイル名の自動付与を修正したいです。
  • 現在のマクロでは、連番でimage00001.bmp、image00002.bmpというファイル名が付与されますが、画像変換したセルの右隣のセルの文字列をファイル名として使用したいです。
  • 具体的には、A1のセルを画像にした場合、右隣のB1の文字列が01-001aであれば、ファイル名をimage01-001a.bmpにしたいです。修正方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

選択されているセルを基点に行・列の差を指定して参照する offset が使えるかも? テストできる環境にないので、以下の位置に例示の1行を追加してみてください。 ダイアログで「画像変換したセルの右隣のセルの文字列」が表示されるなら、取得は成功。 Call SavePicture(p, sImgDir & "\image" & Format$(lImgCnt, "00000") & r.offset(0,1).text &".bmp") に変更して実行してください。     If Not p Is Nothing Then       ' // BMPファイルを書き出す       msgbox r.offset(0,1).text    ''''<--この位置にこの行を追加       Call SavePicture(p, sImgDir & "\image" & Format$(lImgCnt, "00000") & ".bmp")       lImgCnt = lImgCnt + 1

yousiss
質問者

お礼

早速のご回答ありがとうございます。 00000という連番は必要なかったので & Format$(lImgCnt, "00000") だけ削除しましたが、他は教えていただいたように変更してうまくいきました。 「offsetを使うんだろうな~」といううっすら予想はあったのですが、どうやって書いたらいいのか分からなかったのでたすかりました。 ありがとうございました。

関連するQ&A