- ベストアンサー
エクセルVBAでRangeの表現の仕方
よろしくお願いします。 c が変数のとき Range("A"&C&":B30) この表現を利用するとエラーになります。 どうすれまよろしいのでしょうか?
- みんなの回答 (6)
- 専門家の回答
関連するQ&A
- EXCEL VBA Rangeについて
プログラム初心者です。 EXCEL VBAに以下のようなRangeプロパティがあります。 CountNumは変数なのですが、 どのような内容を示しているのか分かりません。 教えていただけますでしょうか。 宜しくお願いします。 Worksheets("A情報").Range("C4:CS" & CountNum + 2)
- ベストアンサー
- Visual Basic
- VBAのRangeについて
VBAのRangeについて質問があります。 以下のような表があった場合、VBAにて動的に図を作成したいのですが、Rangeの使い方がよく分かっておりません。 A列 B列 C列 D列 E列・・・ -------------------------------------------- りんご バナナ すいか ・・・ A店 200円 100円 500円 ・・・ B店 180円 130円 800円 ・・・ C店 220円 150円 650円 ・・・ やりたいことは、 ・A列とB列を選択してグラフを作成 ・A列とC列を選択してグラフを作成 ・A列とD列を選択してグラフを作成 ・・・・・・ というようなグラフを作成したいと考えております。(列は動的です。) 【駄目だった例】 Range(Range(Cells(1, 1), Cells(4, 1)), Range(Cells(1, 3), Cells(4, 3))).Select このように書くと、A列からC列まで全て選択されてしまいます。 (A列とC列だけ選択して、B列は除外したい。) ご存知の方がおりましたら、回答していただけると助かります。
- ベストアンサー
- Visual Basic
- VBAで、セル(Range)のオブジェクトが取得できない
セルの情報を取得したいのですが、何故か以下のように書くと上手い具合に取得できません(A、B、Cは数値の変数)。 ------ Dim Rng As Range 'セル範囲を格納 Set Rng = Worksheets(1).Range(Cells(A, B), Cells(A, C)) ------ 以下のようにしてやると、何とか取得できます。 Worksheets(lngASNo + 1).Select Set Rng = Range(Cells(A, B), Cells(A, C)) どこが悪いのでしょうか? もし、判る方がいらっしゃいましたら、よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- VBAのRangeについて
先の質問で教えていただいたRangeの事でお教えねがいたいのですが Range("B4") = Textbox1.textの ”B4 "の部分の4(行)が GYO と言う変数で定義してある場合どのようにすればよいのかわかりません。 質問の説明が下手ですみません。
- ベストアンサー
- Visual Basic
- エクセルVBAで
いつもお世話になります。 変数で set a=range("a1:B10") という使いかたしますよね。そこで質問なんですが、複数個の範囲を変数に放り込みたい時は如何すればいいのでしょうか? 例 set a=range("a1:B10")、range("g7:h13")、・・・ みたいな感じです。 宜しくお願いします。
- ベストアンサー
- Visual Basic
- エクセルのVBAで悩んでいます。
いつもありがとうございます。 エクセルのVBAで悩んでいます。 セルの範囲指定をVBAで行いたいのです。 ただし、引数に数値変数を使用する為、Cellsプロパティを使います。 すると、離れている範囲の範囲指定が出来ないのです。 例えば、Rangeプロパティだと、 Range("A5:E5,A9:E32").Select こうなるところを、 A9:E32 を変数に置き換えたくて、 Range("A5:E5", Cells(g, 1), Cells(h, 5)).Select と、するとエラーが出ます。 VBAの前文は次の通りです。 Private Sub CommandButton1_Click() a = Me.TextBox1.Value b = Me.TextBox2.Value Set c = Range("a:a").Find(what:=a, LookIn:=xlValues, lookat:=xlWhole) Set d = Range("a:a").Find(what:=b, LookIn:=xlValues, lookat:=xlWhole) 'MsgBox c + d e = c.Address 'MsgBox e f = d.Address 'MsgBox f g = Range(e).Row MsgBox g h = Range(f).Row MsgBox h Range(Cells(g, 1), Cells(h, 5)).Select End sub よろしくお願い致します。
- 締切済み
- Windows XP
- EXCEL VBAのRangeプロパティについて
EXCEL VBAのRangeプロパティについて 下の2つのプログラムで表示されるメッセージは、 プロシージャAは"$B$1" プロシージャBは"$A$1" なのですが、Rangeプロパティはどういう使われ方をしているのでしょうか? お教えくださいませ。 ・プロシージャA Sub test1() Cells(1, 2).Activate MsgBox ActiveCell.Range("A1").Address End Sub ・プロシージャB Sub test2() Cells(1, 2).Activate MsgBox ActiveSheet.Range("A1").Address End Sub
- ベストアンサー
- その他(プログラミング・開発)
- エクセルVBAでデータ検索の方法
自分は技術者ではないのですがエクセルのVBAで質問があります。 エクセルで作ったデータをフォームから検索して一件ずつ表示するにはどうしたらよいでしょうか? 途中まで作ったのですが、自分の方法としては「シート1」にあるデータを変数に入れ、その変数をフォームに出力させるというものなんですが、もっと簡単な方法はないでしょうか? 変数a = 2 : 変数b = 1 For 変数a = 2 To 65536 If Sheets("シート1").Range("A" & 変数a) = Empty And 変数a = 2 Then MsgBox "データがありません" GoTo 終わり ElseIf Sheets("シート1").Range("A" & 変数a) <> Empty Then 項目1(変数b) = Sheets("シート1").Range("A" & 変数a) 項目2(変数b) = Sheets("シート1").Range("B" & 変数a) 項目3(変数b) = Sheets("シート1").Range("C" & 変数a) 変数b = 変数b + 1 ElseIf Sheets("シート1").Range("A" & 変数a) = Empty Then GoTo 終わり End If Next 終わり: こんな感じにしたいです。↓ http://hp1.cafesta.com/hp/album_photo_read.do?hpid=miya05&menu_...
- ベストアンサー
- Visual Basic
- EXCELのVBAでRange("A1:C4")を変数にする方法を教え
EXCELのVBAでRange("A1:C4")を変数にする方法を教えて下さい。 Sub Sample1() Range("A1:C4").Borders.LineStyle = True End Sub 上のマクロの"A1:C4"を変数にして成立させるにはどのように設定すればいいのでしょうか? 以下の方法ではエラーになってしまうので、宜しくお願いします。 Sub Sample1() HENSU = Chr(34) & "A1" & ":" & "C4" & Chr(34) Range(HENSU).Borders.LineStyle = True End Sub
- ベストアンサー
- Visual Basic
お礼
ありがとうございます! 下記でOKでした。 Sheets("Sheet5").Range("F" & "C2" & ":H603").Copy Destination:=Worksheets("Sheet2").Range("A6:G") 上下行は一行です。