お尋ねします。
エクセルで、1つのブックに12シート作り、それぞれひと月のデータを
記録しています。(データは同じ位置に入力するようにしています。)
数年分のデータを、1月は1月だけ、移動させて1つのブックにしたいです。それを12か月分やりたいです。
シートの移動とコピーでやる方法はわかりますが、
もっと効率よく移動(コピー)させる方法は
ありますか?
教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

こんにちは。



私のやりかたなんで、もっと詳しい方いらっしゃると思うので
私もたまたま1つのブックに12シート作っているから、
あくまでヒント、です。


私はコピーを「リンク貼り付け」にして
ひとつのブックにまとめてます。
いろいろ試したのですが、これが一番ずれなかったので。
(関数入れたらずれまくってしまった。何か原因があるのかな)

ご参考まで。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qマクロでシートタブ色の変更

例えば、A1に数字が入ればシートタブが青色に、A1とA2に数字が入ればシートタブが黄色に、
A1とA2とA3に数字が入ればシートタブが赤色に、このようにするにはどのように記述したら良いでしょうか、よろしくお願いいたします。

Aベストアンサー

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Range("A1:A3"), Target) Is Nothing Then
Worksheets("Sheet1").Tab.ColorIndex = -4142
If Range("A1") <> "" And Range("A2") <> "" And Range("A3") <> "" Then
Worksheets("Sheet1").Tab.ColorIndex = 3
ElseIf Range("A1") <> "" And Range("A2") <> "" Then
Worksheets("Sheet1").Tab.ColorIndex = 6
ElseIf Range("A1") <> "" Then
Worksheets("Sheet1").Tab.ColorIndex = 5
End If
End If
End Sub
これで良いのかな。
ーー
結構、初心者には勉強点があるように思う。
(1)シートイベントというものの勉強
(2)マクロの記録でタブの色を変えるコードを勉強する
また色を抹消するコードを勉強する。
(3)3つの場合の場合分け(条件の多いほうから聞く)
(4)A1:A3以外は素通りさせる方が良いかな(ntersectの利用。これはIFでORを使っても出来る)
数字かどうかのチェックを略している(IsNumericで、使って追加してください)
しかしこの質問のアイデアは珍奇で使えるのかな(今まで質問に出たこと無いような)。
Changeイベントを扱う難しさなどがある。上記コードでは多数例テストして無いので、出来るだけテストして見てください。

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Range("A1:A3"), Target) Is Nothing Then
Worksheets("Sheet1").Tab.ColorIndex = -4142
If Range("A1") <> "" And Range("A2") <> "" And Range("A3") <> "" Then
Worksheets("Sheet1").Tab.ColorIndex = 3
ElseIf Range("A1") <> "" And Range("A2") <> "" Then
Worksheets("Sheet1").Tab.ColorIndex = 6
ElseIf Range("A1") <> "" Then
Worksheets("Sheet1").Tab.ColorIndex = 5
End If
End I...続きを読む

Q【質問】ブック名AからシートをブックBへ移動する時、ブックAにシートを残してブックBにもコピーするには?

こんにちは、みなさん!!

【質問】ブックAのシートを、ブックBに移動する時に、ブックAにも
同シートを残しておき、さらに、ブックBに同シートを移動する事は
できますか?ドラック&ドロップでは、ブックAにシートはなくなり、
完全に、ブックBに移動されてしまいます。

ご存知の方いらっしゃいましたらよろしくお願いします。

Aベストアンサー

はじめまして

ブックAの該当シートタブを右クリック、移動またはコピーを選択、移動先ブックをブックBに、コピーを作成するにチェックを入れてOK。
これでいけます。

また、ドラッグアンドドロップでするなら、「CTRL」キーを押しながらやってみてください。
移動ではなくコピーになります。

的外れでしたらごめんなさい。

QofficeXP Excel シートタブの色変更が出来るタイプと出来ないタイプ??? 

自宅も会社もofficeXPなんですが、少し違うところがあります。

エクセルで、自宅のはシートのタブが色変更できます。
シートタブ上で右クリックから色を選べます。

でも、会社のは同じXPなのに、右クリックからこの機能が出てこないのです。
これってバージョンによるものなんですか?

それとも、法人向けはこの色変更の機能を抜き取っているんですか?

どなたかわかるかたいますか?
よろしくお願いします。

Aベストアンサー

こんにちは

バージョンの違いがあるのでは、バージョンは?
検索していると2002からだとか(未確認ですが)
http://www.relief.jp/itnote/archives/002047.php

では。

Qエクセル2002 シート1のA1のコピーをシート2のB1~B12にしたい。

まず、シート2のB1に 「='シート1'!A1」と設定し、無事コピーができました。
次に、そのセルをコピーして、B2~12にペーストしたら、式が勝手に変更されていて
B2が「='シート1'!A2」など、「='シート1'!A*」のアスタリスク部分の数字が変わってしまい
コピーができません。どのようにすれば、できるようになるのでしょうか?
別シートやセルで試してみましたが、同じ現象でした。
この作業を、相当回数しなけれいけないので、各セルに書式を手作業で行っていくことは
現実的でないので、効率の良い方法を教えて頂ければ幸いです。
(シートとセルは任意で実際には、表題のようにシンプルではありません)
また、基本的なミスがあればご指摘下さい。よろしくお願いします。

Aベストアンサー

質問に対する回答は、No1様の回答の通りなのですが、

>この作業を、相当回数しなけれいけないので
作業の内容によって、コピーしたときに変わってくれた方が良い場合とそうでない場合があるのではないでしょうか?
(全部同じ内容でよければ、必ずしも全てをシート1への参照にしなくても
 (シート2の)B1への参照にしておいても同じ結果が得られます)

コピーしたときに変わるか換わらないかをコントロールするには、「絶対参照」「相対参照」を理解しておくのがよろしいと思います。

以下、参考までに。
http://www11.plala.or.jp/koma_Excel/contents1/mame1006/mame100601.html
http://www.nct9.ne.jp/poporu/18.html
http://www.eurus.dti.ne.jp/~yoneyama/Excel/zettai.html

Q[EXCELマクロ] シートタブに自動で色をつけるには?

シートが、1日~31日まであり、シート内は31枚とも全て同じで、
例えば、セルA1 に、日付(平成19年7月18日と表示)があったとき、
その日付を参照して、土曜日なら青色、日曜日なら赤色、というふうに
自動で31枚全てのタブの色を変更してくれるようにしたいのですが、
可能でしょうか?
また可能であれば、どのようにマクロを組めばいいでしょうか?

Excel2003を使用しています。
よろしくお願い致します。

Aベストアンサー

全シートのセルA1に日付が入っている場合でのサンプル。

Sub test()
  Dim sh As Worksheet
  Dim hi As Integer
For Each sh In Worksheets
  With sh
     Select Case Weekday(.Range("A1").Value, vbMonday)
         Case 6
         .Tab.ColorIndex = 41
         Case 7
         .Tab.ColorIndex = 3
         Case Else
         .Tab.ColorIndex = xlColorIndexNone
     End Select
 End With
Next
End Sub
日付以外が入っている場合は、修正が必要かもしれません。
ご参考程度として下さい。

Q12シート(1月~12月)から商品の購入者や購入サイクルを調べたい

Excel2007を利用しております。
こんな事って出来たら良いな~と言うレベルの者です。
一ヶ月1シートで売り上げ管理をしています。一か月毎の詳細は「フィルタ」で購入者別、商品別を出しているのですが昨年一年間の購入者別、商品別、今年上半期の購入者別、商品別を1シートに抽出できないものかと考えております。出来れば(例)A1セルに「田中様」と入れると12シートから田中様の購入日、購入商品が出たり、(例)A1セルに「りんご」を入れると12シートからリンゴの購入日、購入者が出る様に出来るのでしょうか?現在の表は下記のとおりです。

 A       B       C       D
購入日   購入者    商品名     数量
8/1     田中様    りんご     10
8/2     鈴木様    みかん     20
8/2     田中様    ぶどう      5

購入者は約250名~300名程、商品アイテムは30種程です。
サイト内を良く見ました。「VBA、マクロ」を勉強しなさいとのご指摘が多い様ですが、エクセル入門でやっとここまで出来るようになったど素人です。よろしくお願いいたします。

Excel2007を利用しております。
こんな事って出来たら良いな~と言うレベルの者です。
一ヶ月1シートで売り上げ管理をしています。一か月毎の詳細は「フィルタ」で購入者別、商品別を出しているのですが昨年一年間の購入者別、商品別、今年上半期の購入者別、商品別を1シートに抽出できないものかと考えております。出来れば(例)A1セルに「田中様」と入れると12シートから田中様の購入日、購入商品が出たり、(例)A1セルに「りんご」を入れると12シートからリンゴの購入日、購入者が出る様に出来る...続きを読む

Aベストアンサー

残念ながら、この手のシートの構成ですと、「VBAを勉強してください。」
なぜ、VBAまで駆使しないと出来なくなったのでしょうか。
それはシート構成を 一ヶ月1シートで売り上げ管理 した為
1年間とか上半期とかの集計を依頼されると大変手間になったからです。
今の状態では、各シートでオートフィルターで条件にあったデータを新しいシートにコピィしながら追加していくことになります。

今からでも間に合うようであれば
購入者のデータは 1枚のシートでひたすら縦方向に入力してください。
(今までのシートも1枚のシートにコピペします)
多分、ご希望の集計の一覧表はオートフィルターで簡単に出来ると思います。計算であれば関数で出来ます。
別途、必要なシートは
購入者は約250名~300名程の一覧表のシート
商品アイテムは30種程の 一覧表のシートです。
合計 3枚のシート構成にします。
データの入力には一覧表のシートを利用して入力規則など利用します。
エクセルに限らずデータ管理の一般的な手法です。
業務経験の長い先輩などに相談してみると必ずそうされていると思います。

残念ながら、この手のシートの構成ですと、「VBAを勉強してください。」
なぜ、VBAまで駆使しないと出来なくなったのでしょうか。
それはシート構成を 一ヶ月1シートで売り上げ管理 した為
1年間とか上半期とかの集計を依頼されると大変手間になったからです。
今の状態では、各シートでオートフィルターで条件にあったデータを新しいシートにコピィしながら追加していくことになります。

今からでも間に合うようであれば
購入者のデータは 1枚のシートでひたすら縦方向に入力してください。
(今ま...続きを読む

Q該当月のみにシートタブに自動で色

いつもお世話になります。
Win7 Excell2010 てす。

記入 顧客名簿 1 ~ 12  とシートがあります。

1)記入、顧客名簿 のシートには色付けしています。
2)1 ~ 12 は半角文字です。 (1月~12月を意味しています)

例えば、
A1 のセルに 8 と 今月は 8月ですから 8のシートタブに自動的色付けさせたいのですが可能でしょうか。
いろんなサイトで検索しましたが見つけることができませんてした。
VBAの記述と思いますがもし可能ならご指導いただけませんか。

Aベストアンサー

例として。

Dim sh As Worksheet
    For Each sh In Worksheets
        If sh.Name = Month(Now) Then
            sh.Tab.Color = 255    ' 赤
        Else
            sh.Tab.ColorIndex = xlNone
        End If
    Next

これを「開く時」イベントに書いておくと、
おそらくお望みの
・該当月の見出しは「赤」
・それ以外の見出しは「無色」
に出来ます。

VBAの使い方は別途お調べくださいませ。

Q1年分のデータから特定の月分のデータを抽出→表示

エクセル初心者です。
仕事で機材の貸し出しをしておりまして、
それを受付、まとめ、集計しているエクセルの表があります。

受付日、貸し出し機材、貸し出し先、使用時間を日毎にベタ打ちしたものがあり、
それが1年分、エクセルの表で1シートにまとめています。

その中から、月ごとのデータをシート2に抽出したい(それを元に、月別のまとめをするので)のですが、
どうすればいいでしょうか。
理想は、4/1と入力したら、4/1~4/30までのデータが表示される、
というようなものなのですが…。

そういうものになると、やはりマクロなどになりますでしょうか?
オートフィルではなく、関数で表示させたいです。

ただ表示させるだけでいいのですが…。

初心者なのに高望みをして申し訳ないのですが、
作れと上司から命令されています…。
どうかお力をお貸しください。よろしくお願いいたします。

Aベストアンサー

こんばんは!
一例です。

↓の画像で説明します。
左側が元データでSheet1・右側が表示させるデータでSheet2とします。
Sheet2のA1セルに検索したい月の数値を入力すると4行目以降に表示させるようにしてみました。

Sheet1に作業用の列を1列設けます。
作業列E2セルに
=IF(OR(Sheet2!A$1="",MONTH(A2)<>Sheet2!A$1),"",ROW())
という数式を入れこれ以上データはない!というくらいしっかり下へオートフィルでコピーしておきます。

そしてSheet2のA4セルに
=IF(COUNT(Sheet1!$E:$E)<ROW(A1),"",INDEX(Sheet1!A:A,SMALL(Sheet1!$E:$E,ROW(A1))))
という数式を入れD4セルまで右にコピー!
そして
A4セルの表示形式は「日付」に、
D4セルの表示形式は「時刻」(←本来であればユーザー定義から [h]:mm としておいた方が良いと思います9
最後にA4~D4セルを範囲指定 → D4セルのフィルハンドルで下へコピーすると
画像のような感じになります。m(_ _)m

こんばんは!
一例です。

↓の画像で説明します。
左側が元データでSheet1・右側が表示させるデータでSheet2とします。
Sheet2のA1セルに検索したい月の数値を入力すると4行目以降に表示させるようにしてみました。

Sheet1に作業用の列を1列設けます。
作業列E2セルに
=IF(OR(Sheet2!A$1="",MONTH(A2)<>Sheet2!A$1),"",ROW())
という数式を入れこれ以上データはない!というくらいしっかり下へオートフィルでコピーしておきます。

そしてSheet2のA4セルに
=IF(COUNT(Sheet1!$E:$E)<ROW(A1),"",INDEX(Sheet1!A:A,...続きを読む

QEXCELシートのタブの色

EXCELでシート(初期設定でsheet1とかsheet2とか)の色が変えられたと思ったんですけどやり方を忘れてしまいました。
教えてくださ~い!

Aベストアンサー

こんにちは。maruru01です。

一応、2000以前での方法を載せてあるページです。
裏技的なので、おすすめしませんが。

http://xcelfiles.homestead.com/Excel01_J.html#anchor_14133

参考URL:http://xcelfiles.homestead.com/Excel01_J.html#anchor_14133

Q12ヶ月分のシートのデーターを1枚のシートに

いつもお世話になりますす。

win8.1 excell2013 です。

参照図で説明させてていただくと、
シート名が 1~12 の12ヶ月分の12枚あります。
それに + で 「データー一覧」で合計13シートです。

ご指導いただきたいのは、
例えば
「データー一覧」C4=「1」=C13 数値は1です。

「データー一覧」C4 に入れる数式です。


補足
※「データー一覧」でN列(2月)でしか表示していません。

Aベストアンサー

データー一覧
C4 =index(indirect(offset($C$2,0,6*int((columns($C4:c4)-1)/6))&"!c:h"),12+rows(C$4:c4),1+mod(columns($C4:c4)-1,6))

C4 セルをコピーして C4:N8 のセル範囲に貼り付け。空白セルから参照することにより表示される「0」を非表示するには、ゼロのみを非表示にする書式として「0;;」などをセル範囲に設定。


人気Q&Aランキング