Withでコードをまとめたいです。。。折れ線グラフを作成するマクロを組みました。
VB
1Sheetname1 = Application.InputBox("元データのあるシート名を入力してください", "シート名", Type:=2) 2Sheetname2 = Sheetname1 + "グラフ" 3 Range(Selection, Selection.End(xlDown)).Select 4 ActiveSheet.Shapes.AddChart2(227, xlLine).Select 5 ActiveChart.SetSourceData Source:=Range("$B$9:$B$296,$A$9:$A$296") 6 ActiveChart.Parent.Cut 7 Sheets(Sheetname2).Select 8 Range("A1").Select 9 ActiveSheet.Paste 10 Sheets(Sheetname1).Select 11 Range("C9").Select 12 13 Range(Selection, Selection.End(xlDown)).Select 14 ActiveSheet.Shapes.AddChart2(227, xlLine).Select 15 ActiveChart.SetSourceData Source:=Range("$C$9:$C$296,$A$9:$A$296") 16 ActiveChart.Parent.Cut 17 Sheets(Sheetname2).Select 18 Range("H1").Select 19 ActiveSheet.Paste 20 Sheets(Sheetname1).Select 21 Range("D9").Select
横をA9:A296、縦をB9:B296で折れ線グラフを作成し、別のグラフ貼り付け用のSheetに貼り、次にA9:A296、C9:C296でグラフを作成していき、また貼り...としました。ただ、このコードはまだ続いていて、縦の範囲が最終的にAFまで行きます。(以下、AEとAF)
VBA
1 Range(Selection, Selection.End(xlDown)).Select 2 ActiveSheet.Shapes.AddChart2(227, xlLine).Select 3 ActiveChart.SetSourceData Source:=Range("$AE$9:$AE$296,$A$9:$A$296") 4 ActiveChart.Parent.Cut 5 Sheets(Sheetname2).Select 6 Range("CN18").Select 7 ActiveSheet.Paste 8 Sheets(Sheetname1).Select 9 Range("AF9").Select 10 11 Range(Selection, Selection.End(xlDown)).Select 12 ActiveSheet.Shapes.AddChart2(227, xlLine).Select 13 ActiveChart.SetSourceData Source:=Range("$AF$9:$AF$296,$A$9:$A$296") 14 ActiveChart.Parent.Cut 15 Sheets(Sheetname2).Select 16 Range("CU18").Select 17 ActiveSheet.Paste
こんな感じです。ですが、どう考えてもB~AFを指定するのは長いので、Withを使おうと考えたのですが、ここでのWithステートメントの使い方はどのようにすれば良いでしょうか。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。