5倍速!メールマガジン
外部アカウントで登録
受講生の声
新着の講座投稿
新着の講座コメント
新着のノート投稿
投稿一覧へ新着のノートコメント
表示できる投稿はありません。
サイト運営者紹介
小川 慶一講師/教材/システム開発者紹介
この学習サイトの教材制作、サポート、システム開発をすべてやっています。
表示できる投稿はありません。
この学習サイトの教材制作、サポート、システム開発をすべてやっています。
受講生さんの投稿
(投稿ID: 2239)
先程の列のループの質問の続きです。
retuを変数にしてとりあえずL列M列 二つの条件を満たした合計がだせました。
2列くらいならいいですが 10列超えると下記では辛いです^^;
もっと簡素な構文もあるかと思いましたが
出来たところまでです。
値は思った通りの数が出ましたが 構文として どうなんでしょうか?
Sub syuukei3()
Dim goukei
Dim retu
Dim hida
Dim migi
For migi = 3 To 9
retu = "L"
goukei = 0
For hida = 3 To 13
If Range("E" & hida).Value = Range("K" & migi).Value And Range("H" & hida).Value = Range("L2").Value Then
goukei = goukei + Range("F" & hida).Value
End If
Range(retu & migi).Value = goukei
Next
Next
For MIGI = 3 To 9
retu = "M"
goukei = 0
For hida = 3 To 13
If Range("E" & hida).Value = Range("K" & migi).Value And Range("H" & hida).Value = Range("M2").Value Then
goukei = goukei + Range("F" & hida).Value
End If
Range(retu & migi).Value = goukei
Next
Next
End Sub
ゲストさんのコメント
(コメントID: 3641)
条件文の可読性を高めるためなら、発展編1で扱っている途中改行のノウハウを。
あと、発展編1レベルの方法で解決するのでしたら、モジュールレベル変数を使えばもっとキレイにいくかな。
発展編2で Function プロシージャを学べばさらに華麗に決まります。いずれにしても、まずは発展編1の復習を。
>お世話になります。
>先程の列のループの質問の続きです。
>retuを変数にしてとりあえずL列M列 二つの条件を満たした合計がだせました。
>2列くらいならいいですが 10列超えると下記では辛いです^^;
>もっと簡素な構文もあるかと思いましたが
>出来たところまでです。
>値は思った通りの数が出ましたが 構文として どうなんでしょうか?
>Sub syuukei3()
> Dim goukei
> Dim retu
> Dim hida
> Dim migi
> For migi = 3 To 9
> retu = "L"
> goukei = 0
> For hida = 3 To 13
> If Range("E" & hida).Value = Range("K" & migi).Value And Range("H" & hida).Value = Range("L2").Value Then
> goukei = goukei + Range("F" & hida).Value
> End If
> Range(retu & migi).Value = goukei
> Next
> Next
>
> For MIGI = 3 To 9
> retu = "M"
> goukei = 0
> For hida = 3 To 13
> If Range("E" & hida).Value = Range("K" & migi).Value And Range("H" & hida).Value = Range("M2").Value Then
> goukei = goukei + Range("F" & hida).Value
> End If
> Range(retu & migi).Value = goukei
> Next
> Next
>End Sub
>