Excel2003を使用しています。
ExcelのVBAでグラフ作成のマクロを作る際に、
取得するデータの行数が可変だった場合にどうすればいいのか知りたいです。
現在は取得するデータの範囲を以下の様に取ってきています。
ActiveChart.SetSourceData Source:=Sheets("シート名").Range("B1:C5000"), PlotBy:=xlColumns
ここで、データの範囲("B1:C5000")が可変だった場合のデータ範囲の取得方法を知りたいです。
例えば、("B1:C7000")や("B1:C10000")など。
具体的には"B1"のセルを選択して、
[Ctrl & Shift]を押しながら "→"、"↓"
と操作を行なったときに選択される範囲をグラフのデータとして使用したいです。
途中、空白セルはない前提でかまいません。
データの終端を取得する「Endプロパティ」なるものが存在するようですが、
これを使用するのでしょうか?
それとも別の方法があるのか・・・?
宜しくお願いします。
No.3
- 回答日時:
No1です。
Rng = Range(Range(Range("B1"), Range("B1").End(xlToRight)), Range(Range("B1"), Range("B1").End(xlToRight)).End(xlDown)).Address
Charts.Add
ActiveChart.ChartType = xlColumnClustered
ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range(Rng), PlotBy _
:=xlColumns
ではどうでしょう?
No.1
- 回答日時:
> 具体的には"B1"のセルを選択して、
> [Ctrl & Shift]を押しながら "→"、"↓"
> と操作を行なったときに選択される範囲
その範囲なら、そのまんま
Range(Range("B1", Range("B1").End(xlToRight)), Range("B1", Range("B1").End(xlToRight)).End(xlDown))
ですよ。
ありがとうございます。
ですが、エラーになってしまいます・・・
「実行時エラー '1004'
アプリケーション定義またはオブジェクト定義エラーです。」
具体的には以下のようにしたのですが・・・
ActiveChart.SetSourceData Source:=Sheets(sheet_name). _
Range(Range("B1", Range("B1").End(xlToRight)), Range("B1", Range("B1").End(xlToRight)).End(xlDown)), _
PlotBy:=xlColumns
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) VBA : スクレイピングできない 4 2023/05/12 22:26
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Excel(エクセル) 余計なお世話的な「入力規則」?対策は? 2 2023/01/14 12:39
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Excel(エクセル) Excel VBA 空白行があるセル範囲に色を付ける 3 2022/06/13 15:58
- Visual Basic(VBA) vba 等間隔の列に対しての計算 6 2022/05/17 20:15
- Excel(エクセル) エクセルの散布図で新たに入力した値のデータラベルが空欄になる現象 1 2022/04/26 09:31
- Visual Basic(VBA) 【VBA】Excelの特定範囲のセルを画像で保存したい 2 2023/01/25 13:06
- Excel(エクセル) Excel ドロップダウンリスト(入力規則)に関してです データの入力規則で元データ79000行のド 3 2023/07/17 10:06
- Excel(エクセル) エクセルVBA 複数行にまたがっている選択を判定するには 2 2023/05/21 21:54
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでアクセスDBからデータの取...
-
XMLでデータとして画像を指定す...
-
【VB.NET】Excelの最終行までの...
-
【C#】textBoxの指定行のデータ...
-
MSFlexGrid 行選択状態
-
クリスタルレポートでレコード...
-
batでレジストリキーから読み取...
-
AccessVBAでのExcelメモリ解放
-
C# DataTableに最後に追加した...
-
Web画面のTableから数字を取得...
-
「Nullの使い方が不正です」の...
-
VB.NET マルチスレッド処理につ...
-
DataGridの全行編集状態での行追加
-
wordにexcelデータの流し込み、...
-
富士通(汎用機)のAIMについて
-
Excel VBA で日付を4ケタの数値...
-
ADODBでの行番号の取得、もしく...
-
アクセスでウェブ上のデータを...
-
java / jsp selectedについて
-
VB2010で、選択した系列を最前...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
XMLでデータとして画像を指定す...
-
【C#】textBoxの指定行のデータ...
-
「Nullの使い方が不正です」の...
-
Excel VBAでフォルダ内の全テキ...
-
【VB.NET】Excelの最終行までの...
-
VBAコンボボックスの内容が反映...
-
非同期のプロセス間通信(パイプ...
-
VBAでアクセスDBからデータの取...
-
アクセスでウェブ上のデータを...
-
C# DataTableに最後に追加した...
-
クリスタルレポートでレコード...
-
エクセルのセル最終行取得
-
COBOL数値転記の仕様
-
XML構造体に格納したデータの表...
-
ADODBでの行番号の取得、もしく...
-
MSFlexGrid 行選択状態
-
access vba 『○○件づつ表示』を...
-
部品表
-
java / jsp selectedについて
-
VB2010で、選択した系列を最前...
おすすめ情報