プロが教える店舗&オフィスのセキュリティ対策術

みなさまお世話になります。
VBAでタイトルの作業を実行したいのです。下記に条件・動作を書かせていただきます。
・A10セルあるいはA10~Axセルまで連続で行の高さを決定する数値が格納されています
・行の高さを変更したい行数xはB1に格納されています
・別途作成したボタンを押すと、B1の数値に基づきA10~Axの行を順番に行の高さを変更していく
※行の高さは「高さ」であり、ピクセルではありません
※ボタンの作成と押した際にVBAを実行されることは私でもなんとかできます。
よろしくお願いいたします。

質問者からの補足コメント

  • すみません言葉足らずでした。
    「マクロの作成をお願いいたします」の一文が抜けておりました。
    改めてよろしくお願いいたします。

      補足日時:2023/12/17 12:44

A 回答 (3件)

No2です。


以下のマクロを標準モジュールに登録してください。

Public Sub 行の高さ設定()
Dim wrow As Long
For wrow = 10 To Range("B1").Value + 9
Rows(wrow).RowHeight = Cells(wrow, 1).Value
Next
End Sub
    • good
    • 1
この回答へのお礼

助かりました

tatsumaru77さま
お返事が遅くなりすみません
ご提示いただいたマクロで問題なく目的を達成できました
大変助かりました。ありがとうございます!

お礼日時:2023/12/19 05:56

添付図のようになさりたいということでしょうか。


左側がマクロ実行前、右側が実行後です。
10行から13行(B1の値)まで、行の高さを設定したい。
10行は10(A10の値)にしたい。
11行は20(A11の値)にしたい。
12行は30.7(A12の値)にしたい。
13行は24.3(A13の値)にしたい。
「1~複数の連続した行の高さを、各セルの値」の回答画像2
    • good
    • 1
この回答へのお礼

tatsumaru77さま。早速のご回答をありがとうございます。
ほぼその通りですが、一点だけ違いがあります。
B1の「13」は変更する全行数のことになります。
ご提示いただいた例の場合、B1セルには「4」が格納されます。
それ以外はご推察の通りです。
本来なら私が用意すればよい添付図まで用意してくださりありがとうございます。

お礼日時:2023/12/18 07:08

こんにちは



ループ処理の方法をご存じなら・・
1行分の処理を「マクロの記録」にでも取って、可変となる数値にセル値を代入できるように変更します。
あとは、それを必要行数分ループできるようにすれば良いでしょう。

ループがわからない場合は、「VBA ループ処理」あたりでググれば、解説がたくさん見つかると思います。
    • good
    • 1
この回答へのお礼

ありがとう

お礼日時:2023/12/17 12:44

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

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


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