WinActor(ウィンアクター)
教えて !! スーさん。
第2回「Excelで隣接する複数のセル範囲に値を設定する」の巻
目次
- 第2回「Excelで隣接する複数のセル範囲に値を設定する」の巻1(今回)
- 第2回「Excelで隣接する複数のセル範囲に値を設定する」の巻2



今回は問題を出題するので、まずはやってみましょう。

はい、わかりました。

では、問題です。
稼働集計するためのExcelファイルを編集します。
稼働集計するためのExcelファイルを編集します。


図のようにA列に「社員番号」が入力されていて、B~D列に「稼働時間」「超勤時間」「休暇取得時間」を集計するための列があります。
A列に入力されている社員番号数は可変のため、何行まで入力されているかはわかりません。
A列に入力されている社員番号数は可変のため、何行まで入力されているかはわかりません。

この状態から、B~D列の各時間を「0」で初期化してください。


B列、C列、D列の2行目から社員番号が入力されている最終行まで、「0」を設定するということですね。やってみます。

~ 30分経過 ~

できました。こんな感じでどうでしょうか。


Excel操作(最終行取得 その4)を使ってA列「社員番号」の最終行を取得します。


繰返しグループで2行目から最終行まで繰り返します。
このときカウンタに現在行を指定します。
このときカウンタに現在行を指定します。


Excel操作(値の設定2)で現在行のB列に0を設定します。
同様に現在行のC列、D列にも0を設定します。
同様に現在行のC列、D列にも0を設定します。


いいですね。
カウンタに現在行を指定することで、現在行を初期化したり、カウントアップしたりする必要がなく、すっきりした感じでとても良いと思います。
カウンタに現在行を指定することで、現在行を初期化したり、カウントアップしたりする必要がなく、すっきりした感じでとても良いと思います。

ありがとうございます。(やったー!褒められたー!)

ただし、もっと簡単で繰返しも使うことなく、実行速度も速くなるやり方があるので、今回はその方法を紹介します。

えっ!?(ベストアンサーじゃないのか。。。)
目次
- 第2回「Excelで隣接する複数のセル範囲に値を設定する」の巻1(今回)
- 第2回「Excelで隣接する複数のセル範囲に値を設定する」の巻2