重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【解消】通知が届かない不具合について

以下のコードで外部から取得したセル範囲rangeAをresizeを使って
変更しようとしていますが,できません. どこが間違っているのでしょうか. よろしくご教示ください.

Sub No1autofill(A As String, b As Integer)
Dim rangeA As Range, rangeC As Range
Dim rowA As Integer, columnA As Integer, rowsC As Integer
Set rangeA = Range(A)
rowA = rangeA.Row
columnA = rangeA.Column
rowsC = b - rowA
Set rangeC = rangeA.Resize(rowsC + 1, columnA)

A 回答 (3件)

こんにちは。



>変更しようとしていますが,できません

できません、だけではなく、
どういうふうにできないのかを書かないと.....

ぱっと見では、

>rowsC = b - rowA

この、rowsC、がマイナスになると拙いですよね。

以上です。

この回答への補足

内容補足します.
A,b,rowsCが意図した数値であることは,msgboxで確認していますが,セル範囲を変更したはずのrangeCのrowが1のままなのです.

補足日時:2007/02/24 17:34
    • good
    • 0

No1です。



>セル範囲を変更したはずのrangeCのrowが1のままなのです.
>rangeCの行数rangeC.rowをMSGboxで見ると,
>b,rowAの数値に関わらず,1なのです.

範囲の「行数」を求めるときは、
 Row プロパティではなくて、
 Rows (Rowにs付き)プロパティです。

確認してください。
以上です。
 
    • good
    • 0
この回答へのお礼

御礼遅れました.

回答の件,確認しました.
ご指摘のとうりでした.
ありがとうございました.

お礼日時:2007/03/28 00:31

>rowsC = b - rowA


のbはどこで定義・計算・設定されていますか。
部分的なコード部分だけを掲出されてもね。

この回答への補足

内容補足します.
bとAは,ワークシート上に出力された以下ユーザーフォームで
 A = UserForm1.RefEdit1.Text
b = UserForm1.TextBox1.Text
から入力したもので,A,b,rowsCが意図した数値に
なっていることは,MSGboxで出力させて確認しています.
しかし,rangeCの行数rangeC.rowをMSGboxで見ると,
b,rowAの数値に関わらず,1なのです.
resizeで変更されておらず,もとのrangeAの行数が1でなくても1になります.

補足日時:2007/02/24 17:33
    • good
    • 0

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