アプリ版:「スタンプのみでお礼する」機能のリリースについて

VBAでセル検索から対象行のセルをコピーする方法を教えてください。

B列に日付、C列からF列に数式が入っています
例)
B列
10月1日
10月2日
10月3日
10月4日

C列
空白
空白
数式A
数式B

D列
空白
空白
数式AA
数式BB

E列



以上の内容で B列から日付を検索(10月3日)し
対象行のCからF列を選択してコピー、同一
箇所に値貼り付けといったVBAはどのように
書けばよろしいか教えて下さい。

わかりづらくて申し訳ございません。

A 回答 (3件)

No1です。



>対象行のCからF列を選択する方法はどうすれば
>宜しいのでしょうか?
セルの指定方法はエクセル操作の基本と言えます。
これがわからないと、VBAでは何もできないに等しいです。
https://learn.microsoft.com/ja-jp/office/vba/api …

対象セルのRow属性で行番号を取得できますので、それを用いてC:F列を指定すれば良いです。

あるいは、「(B列の)対象セルから一つ右を基準に4列分のセル」と考えれば、
Offset、Resizeを利用しても範囲取得が可能です。
https://learn.microsoft.com/ja-jp/office/vba/api …
https://learn.microsoft.com/ja-jp/office/vba/api …


※ 回答で引用しているサイトは、全てM$のドキュメントサイトですので、そこで調べれば大抵のことはわかるはずです。
(と言うか、ここが大元なので、一番正確なはず)
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
リンクにアクセスして作成する事ができました。

お礼日時:2023/11/06 16:53

こんにちは


VBAのご質問なのでなさりたい処理をExcel機能を使い手作業で出来ると思いますがいかがでしょう

>VBAはどのように書けばよろしいか教えて下さい。
書き方が分からないという事であれば
VBAには作業を記録する機能がありますので なさりたい作業、処理を
マクロの記録を使って記録してみてください
https://zenn.dev/masahiro_toba/articles/efe47687 …
または生成AIなどへ処理手順などを投げてコード作成をしてみてください

いずれにしても初心者にとっては分かり難い処理コードが作成されると思いますが試す作業を行ってみてください

(生成AIはダメでしょうけれど)うまくいかない場合や直したい処理など踏まえて分かる範囲で手直ししたり、調べたり、コードと合わせてご質問されるのが良いと思います
    • good
    • 0

こんにちは



>B列から日付を検索(10月3日)し
>対象行のCからF列を選択してコピー、
>同一箇所に値貼り付けといった
対象行の数式を固定値化したいってことでしょうか?

日付の検索はいろいろな方法が考えられますが、一つしか該当するものがないのなら FINDメソッドを利用するのが簡単かもしれません。
https://learn.microsoft.com/ja-jp/office/vba/api …

複数あって全部を処理するのなら、B列の範囲をループして該当したら処理するといった方法の方がわかりやすいでしょう。
https://learn.microsoft.com/ja-jp/office/vba/lan …

数式を固定値にするのには、コピーして値を貼り付けという方法でもできますが、直接値に変換してしまう方が簡単です。
具体的には
 該当セル範囲.Value = 該当セル範囲.Value
を実行することで、固定値化できます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
FINDメソッドよりB列を検索したのち
対象行のCからF列を選択する方法はどうすれば
宜しいのでしょうか?
また数式を固定値にする作業なので
>該当セル範囲.Value = 該当セル範囲.Value
参考にさせていただきます。

お礼日時:2023/11/02 12:54

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A