Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


8067 / 13645 ツリー ←次へ | 前へ→

【35257】複数シートからの集計結果を別ファイルに表示したい。 アネモネ 06/2/24(金) 14:13 質問[未読]
【35258】Re:複数シートからの集計結果を別ファイル... かみちゃん 06/2/24(金) 14:23 発言[未読]
【35266】Re:複数シートからの集計結果を別ファイル... アネモネ 06/2/24(金) 15:43 質問[未読]
【35267】Re:複数シートからの集計結果を別ファイル... かみちゃん 06/2/24(金) 15:54 発言[未読]
【35268】Re:複数シートからの集計結果を別ファイル... アネモネ 06/2/24(金) 16:05 質問[未読]
【35269】Re:複数シートからの集計結果を別ファイル... かみちゃん 06/2/24(金) 16:18 発言[未読]
【35314】Re:複数シートからの集計結果を別ファイル... かみちゃん 06/2/26(日) 14:18 発言[未読]

【35257】複数シートからの集計結果を別ファイルに...
質問  アネモネ  - 06/2/24(金) 14:13 -

引用なし
パスワード
   VBA初心者です。
いつも拝見させていただいております。
複数シートの個人データを別ファイルの表に
集計したいと思っております。

集計表と個人データがあるブックは別のものです。
集計する個人データは1ブックに5シートあります。
また、データを集計する際にはIF関数を使用して
ある特定のセルに1が入力されいる場合には指定した範囲の
データを集計し0が入力されている場合はデータ集計しない
ようにするにはどうすればいいのでしょうか。
この処理を繰り返し行い、100個ほどある個人データを
集計し別ブックのシートにまとめたいと思っています。

つたない説明で申し訳ありませんがよろしくお願い致します。

【35258】Re:複数シートからの集計結果を別ファイ...
発言  かみちゃん E-MAIL  - 06/2/24(金) 14:23 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>複数シートの個人データを別ファイルの表に
>集計したいと思っております。

方法は、いろいろあるのですが、いっぱい聞きたいことがあります。

集計シートのシートイメージはどのようなものですか?
  A  B  C
1
2
3

個人データのシートイメージはどのようなものですか?
  A  B  C
1
2
3

個人データは、1ブックに5シートが100ブックあって、計500シートということですか?
個人データは、どこか適当なひとつのフォルダに入れてあるのですか?
複数のフォルダなのですか?
ブック名に規則性はあるのですか?

【35266】Re:複数シートからの集計結果を別ファイ...
質問  アネモネ  - 06/2/24(金) 15:43 -

引用なし
パスワード
   かみちゃんさん早速のレス
ありがとうございます。

>>複数シートの個人データを別ファイルの表に
>>集計したいと思っております。
>
>方法は、いろいろあるのですが、いっぱい聞きたいことがあります。
>
>集計シートのシートイメージはどのようなものですか?
>  A  B  C
>1
>2
>3

集計シートのイメージですが
項番、氏名、所属・・・などの列があって1週間ごとの
集計の列が5列あります。
項番 ID  氏名  所属 作業分類  2/1〜集計 2/6〜集計 2/13〜集計 …
1   1 山田太郎 総務 作業時間A  50.00   33.50   20.75   …
2   1 山田太郎 総務 作業時間B  10.50   17.75   10.50   …
3   2 田中一郎 総務 作業時間A  38.00   25.50   15.00   …
4   2 田中一郎 総務 作業時間B  38.00   25.50   15.00   …

>
>個人データのシートイメージはどのようなものですか?
>  A  B  C
>1
>2
>3
>
集計元の個人データ
氏名 山田太郎
月日   作業項目  作業時間1 作業時間2     計
2/1(水) 作業項目1 作業時間A       作業時間計(A+B)
2/1(水) 作業項目2       作業時間B 作業時間計(A+B)
2/1 (水) 作業項目3 作業時間A
2/2 (木) 作業項目1 作業時間A       作業時間計(A+B)
2/2 (木) 作業項目4       作業時間B 作業時間計(A+B)
2/3(金) 作業項目5       作業時間B 作業時間計(A+B)
2/4 (土)       
2/5 (日) 作業項目4       作業時間B 作業時間計(A+B)
 

上記のように入力箇所だけを集計したいと思っています。

個人データは、1ブックに5シートが100ブックあって、計500シートということですか?

そうです。このシート数は暦によって
変更する場合があります。

>個人データは、どこか適当なひとつのフォルダに入れてあるのですか?
>複数のフォルダなのですか?
>ブック名に規則性はあるのですか?

個人データはいくつかのフォルダに分かれています。
また、ブック名は「山田太郎200602.xls」のように
氏名年月.xlsのようになっています。

フラグを入力しての条件分岐は複雑になりそうなので
ただ指定した範囲のシートの集計をするように
変更したいと思います。
シート数が膨大なのでVBAで自動化できればと思います。
申し訳ありませんがよろしくお願い致します。

【35267】Re:複数シートからの集計結果を別ファイ...
発言  かみちゃん E-MAIL  - 06/2/24(金) 15:54 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>集計シートのイメージですが

私もこれから考えますが、私は、まずサンプルデータから作らないとできません。
そのために、イメージを教えていただきました。
このシートを作ることから始めるので、時間がかかるかもしれません。
その間に有識者からレスがつくかもしれませんが。

>>個人データは、1ブックに5シートが100ブックあって、計500シートということですか?
>>
>そうです。このシート数は暦によって
>変更する場合があります。

暦によって増えても、氏名年月.xlsのすべてのシートを処理するイメージでいいのですか?
そのすべてのシートは、同じシートイメージなのでしょうか?

>個人データはいくつかのフォルダに分かれています。
>また、ブック名は「山田太郎200602.xls」のように
>氏名年月.xlsのようになっています。

いくつかのフォルダというフォルダの構成はどのようになっているのですか?
特定のフォルダの下にあるものはサブフォルダも含めてすべてとか・・・
そのフォルダの中には、処理しないブックはあるのですか?
「山田たろう200602」など氏名はいろいろあると思うので、
ブック名「山田太郎200602」の後ろから6文字で氏名と年月をわけるということでいいですか?

【35268】Re:複数シートからの集計結果を別ファイ...
質問  アネモネ  - 06/2/24(金) 16:05 -

引用なし
パスワード
   かみちゃんさん こんにちは。

>私もこれから考えますが、私は、まずサンプルデータから作らないとできません。
>そのために、イメージを教えていただきました。
>このシートを作ることから始めるので、時間がかかるかもしれません。
>その間に有識者からレスがつくかもしれませんが。

お忙しいところすみません。


>暦によって増えても、氏名年月.xlsのすべてのシートを処理するイメージでいいのですか?

対象は全てのシートになります。

>そのすべてのシートは、同じシートイメージなのでしょうか?

同じシートイメージです。

>いくつかのフォルダというフォルダの構成はどのようになっているのですか?
>特定のフォルダの下にあるものはサブフォルダも含めてすべてとか・・・
>そのフォルダの中には、処理しないブックはあるのですか?

所属別に分かれていますが
面倒であれば処理時にフォルダをひとつに
まとめようかと考えています。

>「山田たろう200602」など氏名はいろいろあると思うので、
>ブック名「山田太郎200602」の後ろから6文字で氏名と年月をわけるということでいいですか?

個人を判別するために氏名年月という
ファイル名にしてみました。
現在ヘルプを参照しながら思案中であります。
こちらで何か手がかりがつかめたら
またご連絡いたします。
お手数をお掛けして申し訳ございません。

【35269】Re:複数シートからの集計結果を別ファイ...
発言  かみちゃん E-MAIL  - 06/2/24(金) 16:18 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>面倒であれば処理時にフォルダをひとつに
>まとめようかと考えています。

ある特定フォルダの下にあるブックをすべて処理するという方法がコードとしては
簡単なので、私は、その方法で考えてみます。

>>「山田たろう200602」など氏名はいろいろあると思うので、
>>ブック名「山田太郎200602」の後ろから6文字で氏名と年月をわけるということでいいですか?
>
>個人を判別するために氏名年月という
>ファイル名にしてみました。
>現在ヘルプを参照しながら思案中であります。

以下のような感じで、ファイル名から個人名と年月を判別することはできます。
Sub Test()
 Dim strBookName As String
 Dim strName As String
 Dim strYYYYMM As String
 
 strBookName = Replace(ActiveWorkbook.Name, ".xls", "")
 strYYYYMM = Right(strBookName, 6)
 strName = Left(strBookName, Len(strBookName) - 6)
 MsgBox strName & vbCrLf & strYYYYMM
End Sub

【35314】Re:複数シートからの集計結果を別ファイ...
発言  かみちゃん E-MAIL  - 06/2/26(日) 14:18 -

引用なし
パスワード
   こんにちは。かみちゃん です。

コメントが遅くなっていて、すみません。

>>集計シートのシートイメージはどのようなものですか?
>>  A  B  C
>>1
>>2
>>3
>
>集計シートのイメージですが
>項番、氏名、所属・・・などの列があって1週間ごとの
>集計の列が5列あります。
>項番 ID  氏名  所属 作業分類  2/1〜集計 2/6〜集計 2/13〜集計 …
>1   1 山田太郎 総務 作業時間A  50.00   33.50   20.75   …
>2   1 山田太郎 総務 作業時間B  10.50   17.75   10.50   …
>3   2 田中一郎 総務 作業時間A  38.00   25.50   15.00   …
>4   2 田中一郎 総務 作業時間B  38.00   25.50   15.00   …
>
>>
>>個人データのシートイメージはどのようなものですか?
>>  A  B  C
>>1
>>2
>>3
>>
>集計元の個人データ
> 氏名 山田太郎
> 月日   作業項目  作業時間1 作業時間2     計
> 2/1(水) 作業項目1 作業時間A       作業時間計(A+B)
> 2/1(水) 作業項目2       作業時間B 作業時間計(A+B)
> 2/1 (水) 作業項目3 作業時間A
> 2/2 (木) 作業項目1 作業時間A       作業時間計(A+B)
> 2/2 (木) 作業項目4       作業時間B 作業時間計(A+B)
> 2/3(金) 作業項目5       作業時間B 作業時間計(A+B)
> 2/4 (土)       
> 2/5 (日) 作業項目4       作業時間B 作業時間計(A+B)
> 
>
>上記のように入力箇所だけを集計したいと思っています。

サンプルファイルをようやく作り始めた(すみません)のですが、
作業項目1、作業項目2作業項目3、作業項目4、作業項目5
作業時間A、作業項目B、作業時間計(A+B)
の関係がまったくわかりません。
2/1の作業項目3の計がないのは、なぜですか?
2/4の計がないのは、作業項目がひとつもないからという想像はできるのですが。
作業時間計(A+B)とは、作業時間1+作業時間2 ではないのですか?
せめて、作業時間くらいは、具体的な数字で、集計結果とイメージでも、一致
していることが確認できるように提示していただけませんか?

そうでないと、私には、どう解決したらいいかわかりません。
これで一日くらい悩んでしまいました。

8067 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free