sheet2指定セルデーターから平均
sheet1指定セルに取得したいのですがうまくいきません。
例
sheet1 sheet2
列A 列B 列C 列A 列B 列C
1 2 指定 1 2 3
1 2 3 1 2 3
1 2 3 1 2 3
sheet2・列C1~3の平均を、sheet1・指定セルに取得したいのですが
Sub test()
Dim r As Long, u As Long, ws1 As Object, ws2 As Object, y As Long
r = 10
u = 1
Set ws1 = Sheets(1)
Set ws2 = Sheets(2)
y = ws1.Range("A" & Rows.Count).End(xlUp).Row
Dim myAve As Long
myAve = Application.WorksheetFunction.Average(ws2.Range(Cells(3, u), Cells(7, u)))
ws1.Cells(r, 7).Value = "myAve"
r = r + 1
u = u + 1
End Sub
変数y r u を使いfor~nextでデーターを一括取得するつもりなのですが
この段階でうまくいきません。
No.1ベストアンサー
- 回答日時:
>ws1.Cells(r, 7).Value = "myAve"
変数の使用方法が間違っています
ws1.Cells(r, 7).Value = myAve
>変数y r u を使いfor~nextでデーターを一括取得するつもりなのですが
う~ん、コードからは読み取れませんし、for~nextを使用するような内容でも無いと思います
質問のコードをなるべく使用すると
Sub test()
Dim r As Long, ws1 As Object, ws2 As Object, y As Long
r = 10
Set ws1 = Sheets(1)
Set ws2 = Sheets(2)
y = ws2.Range("C" & Rows.Count).End(xlUp).Row
ws1.Cells(r, 7).Value = Application.WorksheetFunction.Average(ws2.Range(ws2.Cells(1, 3), ws2.Cells(y, 3)))
End Sub
こんな感じ
どうもありがとうございました。
(ws2.Range(Cells(3, u), Cells(7, u)))
(ws2.Range(ws2.Cells(3, u), ws2.Cells(7, u)))
に直し
ws1.Cells(r, 7).Value = myAve
に、直した結果できました。
>う~ん、コードからは読み取れませんし、for~nextを使用するような内容でも無いと思います
このような感じにしたいと思いfor~nextかなと思ったのですが。
sheet2
http://www.geocities.jp/gimonyou01/ws4.jpg
sheet1
http://www.geocities.jp/gimonyou01/ws3.jpg
VB
http://www.geocities.jp/gimonyou01/ws2.jpg
No.2
- 回答日時:
>このような感じにしたいと思いfor~nextかなと思ったのですが。
リンク先を見て分りました
'簡単な解説とチョッと修正
Sub test()
'Dim r As Long, u As Long, ws1 As Object, ws2 As Object, y As Long
'変数の宣言をまとめました
Dim ws1 As Worksheet, ws2 As Worksheet
Dim myAve As Long
Dim r As Long, u As Long
Dim i As Long, y As Long
'r = 10 'アへ
'u = 1 'イへ
Set ws1 = Sheets(1)
Set ws2 = Sheets(2)
y = ws1.Range("A" & Rows.Count).End(xlUp).Row
'Dim myAve As Long ’変数の宣言は、まとめた方が良いです
'Dim i As Long
For i = 10 To y
r = i 'ア
u = r - 9 'イ
myAve = Application.WorksheetFunction.Average(ws2.Range(ws2.Cells(3, u), ws2.Cells(7, u)))
ws1.Cells(r, 7).Value = myAve
'r = r + 1 ’アとすることで不要になります
'u = u + 1 ’イとすることで不要になります
Next i
End Sub
'私ならこうするかな
'rとuの差が常に9なので
'r=i、u=i-9に、それぞれ置き換えることにより
'for~nextの部分がスッキリするかと思います
Sub test_2()
Dim ws1 As Worksheet, ws2 As Worksheet
Dim i As Long
Set ws1 = Sheets(1)
Set ws2 = Sheets(2)
For i = 10 To ws1.Range("A" & Rows.Count).End(xlUp).Row
ws1.Cells(i, 7).Value = Application.WorksheetFunction.Average(ws2.Range(ws2.Cells(3, i - 9), ws2.Cells(7, i - 9)))
Next i
End Sub
以上、参考まで
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルVBAで教えて頂きたいのですが? 2 2022/12/31 20:28
- Visual Basic(VBA) vbaのvlookup関数エラー原因を教えていただけないでしょうか。 3 2022/04/25 16:16
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Visual Basic(VBA) Excel VBA キーワードから列を取得して、さらに空欄行を非表示にする 3 2022/10/21 22:49
- Excel(エクセル) VBAの指示の内容 昨日こちらでご教示頂いたのですが初心者な為、一つ一つの指示が何をやっているのかわ 2 2022/10/25 18:08
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- Visual Basic(VBA) 稀に1円合いません? Sheet1から金額と個数を貼り付ける下記コードで、金額を切り上げるコードを何 3 2022/09/05 15:11
- Visual Basic(VBA) VBA 請求書自動作成 3 2022/04/24 01:58
- Visual Basic(VBA) Sheet1のA列にコードB列にメアド、Sheet2のB列にコード一覧とD列にメアド一覧があり、Sh 3 2022/10/19 11:57
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelのマクロについて教えてく...
-
Excelのマクロについて教えてく...
-
久しぶりのプログラミング
-
Excelのマクロについて教えてく...
-
エクセルのマクロについて教え...
-
Excelのマクロについて教えてく...
-
Excelのマクロについて教えてく...
-
エクセルVBA
-
VBAなくなるの?
-
Excelのマクロについて教えてく...
-
Excelのマクロについて教えてく...
-
ゆっくりムービーメーカーのエ...
-
VB.net(VB)で、フォームにExcel...
-
vba 削除
-
Geogebraの操作方法について
-
ExcelのVBAコードについて教え...
-
VBA指定行削除
-
VBA一覧取得 再投稿
-
エクセルVBAについて
-
VBA 複数のエクセルから一つの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCEL マクロ データが転記さ...
-
VBA繰り返し ワイルドカード
-
ExcelのVBAで最終行の下にコピ...
-
VBA sheet2データーから平均取...
-
Excelで同じシートのコピーを一...
-
エクセルの複数シートの保護を...
-
条件に応じて特定の行を非表示...
-
エクセルVBAでパスの¥マークに...
-
EXCEL:同じセルへどんどん足し...
-
VBAでシートコピー後、シート名...
-
別シート参照のセルをシート毎...
-
エクセルでファイルを開いたと...
-
EXCELで1ヶ月分の連続した日付...
-
エクセルで前のシートを連続参...
-
前の(左隣の)シートを連続参...
-
Excel、同じフォルダ内のExcel...
-
Excelで金銭出納帳。繰越残高を...
-
【マクロ】毎回、ファイル名が...
-
エクセルで前シートを参照して...
-
Excelでセル内の数式は残し値だ...
おすすめ情報