• 締切済み

excelデータベースを作成し別bookに転送

現在、エクセル2007で行を日付で列を項目にしてデータベースを作成した場合、そのbookに新規にシートを設けて、データベースシートから必要なデータを印刷レポートやグラフに転送するとレポート様式の種類が多いことからかなり、容量が大きくなるため、別のbookにレポートやグラフを作成し、必要なデータだけを転送することはできないでしょうか。その際、レポートbookは開けずに転送できれば、なお良いのですが・・・・可能かどうかお聞かせください。アクセスとかはできればさけたいです。よろしくお願いします。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

言っていることが抽象的過ぎて、判りにくい。 >「bookに新規にシートを設けて、データベースシートから必要なデータを印刷レポート 印刷は1ページに印刷に必要なデータで作れば、容量は大きくならない。印刷レイアウトシートをすべてシートに展開して、それが終わってから(保存などして)印刷しているからで、私なら1ページ分を元データを使って、印刷シートを作成し、印刷して、印刷項目でデータで変わる部分はクリアして、次のデータをセットして次ページを作るに移るの繰り返しをする。 >グラフに転送すると 元データによってグラフを作ると、という意味か?画像が入ると容量はテキストに比べると大きく増えるだろう。あたりまえ。 別ブックにあるデータ・グラフを掴んで持ってきて、整えるのはVBAでも難しい。 極く熟練者ならやれるだろうが、質問の仕方からして、質問者は初心者ではないかと思うのであきらめざるを得ないだろう。 >bookは開けずに転送できれば こういうブックを開かずに処理をするのはエクセルの想定外の難しいことである。 == もっと具体的にデータ(ブックとシートと列行を明示し)少数例で、例を挙げて、別質問で質問したら。 >レポート様式の種類が多いことからかなり 手動のくり返しが多くて大変という意味も出てくるだろうが、これはVBAででもやらざるを得ない。VBAを勉強してから考えること。数ヶ月でマスターできるものではないが。 >アクセスとかはできればさけたいです 使うソフト(エクセルで)の選択が適当でないのだろうし、勉強も十分せず、金も使わず、何かをしたいというのは出来るはずがない。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

>データベースシートから必要なデータを印刷レポートやグラフに転送するとレポート様式の種類が多いことからかなり、容量が大きくなるため、別のbookにレポートやグラフを作成し、必要なデータだけを転送することはできないでしょうか。 どのような印刷レポートやグラフを作成したのでしょうか? 通常なら、データベースから必要なデータを抽出などしてグラフなどを作成しても、ファイルサイズが大きくなることはないように思うのですが・・・・ 一方、1つのブックのデータを2つのブックに分ける場合は、基本的にリンク数式や計算式を使う必要がありますが、別ブックを参照すると、逆にファイルを開くのに時間がかかるなどのデメリットが出ます。 現在どのような不都合が出ているのかを具体的に例示されたほうが、皆さんから実戦的な対応策の回答が得られると思います。

関連するQ&A

  • 別ブックのシート名称一覧を作成したい

    excel2016 自ブックの中でシート名一覧作成というマクロはwebにあったのですが、 他ブックのシート名一覧を自ブックへ作成というのを どの様に対応したらよいのかがわかりません。 やりたい内容は、 ①自ブックを開く(シート収集するファイル) ②file_openマクロ実行  c:\workにあるfile.xlsmのブックを開く(file.xlsmが他ブック) ③file.xlsmの全シート名称一覧を  自ブックのsheet1シートのA1セルから下へシート名称記載させる。  file.xlsmに登録されているシート名称は日付と時刻と時刻  202110070830 202110071700  … みたいな12桁のシート名称になっている ③自ブックsheet1のB1からB列最終行(A列にデータがある最終行)  まで必要なセルに1を設定 ④自ブックB列でセルに1があれば、他ブックの対象シートを自ブック  へコピー 以上①~④をマクロで対応したいのですが ③の内容がわからないのでベタでマクロ教えていただきたく、よろしくお願いします。

  • エクセルのデータベース化

    説明が苦手なので、ずばりそのままお聞きします。 よろしければ教えてください。 中分類10項目、小分類5項目、計50項目のデータを 1つの決められたシートのフォーマットに入力し、 それを1回入力するだけで、中分類それぞれに決められたシートへ、 フォーマットで指定された日付の欄にコピーしたいのです。 入力用のシートには、中分類をA~J、小分類を6~10とし、 日付を、年がA1、月がB1、日がC1としています。 データベース用のシートには、A5~A35に1日からの日付、 B列には曜日、それとC5~L5を1日として35行目まで 1ヶ月単位としてあり、それが10シート分あります。 たとえば、日付を5日とすると、 入力用のシート50項目に入力したデータが、 各シートのC10~L10にコピーされるには どうすればいいんでしょうか? 思ったことをちょっとやってみようと思ったのですが、 何も思いつかなくて、お願いする次第です。 おわかりの方で、もしよろしければ教えていただきたいのですが。 説明、わかりづらいかもしれませんが、よろしくお願いいたします。

  • エクセルVBAでデータベースを作成しています。

    エクセルVBAでデータベースを作成しています。 A列には日付データが日付が古い順に上から入っています。 B列以降は出荷数や次回納品日などの付属データが入っています。 A列(日付) B列(出荷数) 7/1     10 7/15      20 7/31     5 8/2     10 8/4     25 8/23    10 8/30    20 9/2     15 9/20    21 9/30     3 出荷データを更新する度に、最終行の次の行に新しいデータが追加されます。 上記データベースは3か月分のデータだけでも行数が3万近くになるため、エクセルの 限界行数に達する前に、何か手を打ちたいのです。 例えば、予め6万行を限界行数に決めておき、データ更新する際に、データベースの限界行数までの残り行数と、追加するデータの行数を比較して、後者が大きいときには、データ、つまりデータベースの行を消去する。というマクロを組みたいと考えています。上記の例で説明すると、10月分のデータを追加しようとして限界行数に達することが分かった場合、7月に該当する行を一括して消去する。という流れです。 限界行数に達したときに、MsgBoxで「1か月分のデータを削除してよろしいですか?」→OKのときに処理を実行するという流れで行いたいのですが、何かよいアイデアがあれば教えてください。

  • Excelで「このブックで、これ以上新しいフォントを設定できません」とでます

    質問するにあたって、どういう情報を提示すればいいかよくわからないので 内容が長くなってしまいますがすみません。 一つのブックに3枚のシートがあり、そのうち2枚はVLOOKUPで使うための リストの表があるシートで、残りの1枚を使って実際にデータを入れていく ベースになるシートを作成しました。 1枚のシートには9列13行の表が20個あります。 一つの表あたり1つのレーダー型のグラフを作って、それぞれの表の下に表示してあります。 1組の表とグラフを作成した後、それをコピーして20組にしました。 1枚のシート(女性20人分の表とグラフ)を作成した後そのシートを 「シートの移動またはコピー」を使って新しいシートを作り、 色と数値を変えて男性20人分の表とグラフにしました。 その2枚のシートをさらに「移動またはコピー」で2回コピーし 最終的にデータのシートを6枚にしようとしたら途中から 「このブックで、これ以上新しいフォントは設定できません」というエラーが出て 最後の1枚のシートの10人分くらいだけ、グラフタイトルフォントとグラフの項目のフォントが 小さくなってしまいました。 そのフォントを選んで大きくしようとするとまた上記のエラーがでて変更できません。 使用しているフォントが多すぎるのか不安だったので行番号と列番号の間をクリックして 全選択をし、MS UI Gothicに統一しました。 (この方法では表のフォントだけしか統一できませんでした) 質問1.この状態で、すべてのグラフの項目に使われているフォントサイズを 統一したいのですがどうしたらいいでしょうか。 質問2.この状態で小さくなってしまったグラフタイトルのフォントを 他のグラフと同じ大きさのフォントにしたいのですがどうしたらいいでしょうか。 OSはXPで、Excelは2003です。

  • エクセルのブック分割マクロを教えてください。

    すみません、教えていただきたいのですが。 ひとつのシートの膨大なデータを種類ごとに別ブックの別シートにわけるマクロです。 オリジナルのシートは1枚です。 1行目は項目行で A:地域名(北米、中南米、欧州、アジア、アフリカ、オセアニア) B:国名(アメリカ、カナダ、ブラジル等) C~J:その他各種項目 10000行程度のデータで、ソート済みです。 このシートを、A列の地域別にブック分割をして、それぞれのブックは中に国名別のシートを持ちます。 各シートの配置はオリジナルと同じく1行目に項目、2行以下がデータというならびにしたいのです。 全部で6ブックで、計50シートくらいになります。 各ブック名は地域名(北米等)とし、各シート名は国名となればありがたいです。 なにとぞよろしくお願いします。

  • Excelをデータベースのように使用した場合 データの抽出

    Excelをデータベースのようにして使用している場合について教えて欲しいことがあります。  ・Sheetを2つ作成したとします。  ・Sheet1はたくさんのデータが入っているシートです。  ・Sheet1の名前を仮に『Data』とします。  ・Sheet2はSheet1から必要なデータを抽出してきて並べるシートです。  ・Sheet2の名前を仮に『Report』とします。  ・『Data』のA列には1~200までの数字が入力されています。  ・その数字は ランダムである上に 重複していることもあります。  ・例えばA1には「1」が入力されていて A2には「2」が入力されています。  ・しかし その後A3にもA4にもA5にも「2」が入力されています。  ・同様にA6~A15までは「3」が入力されているのです。  ・このようにA列の数字は 同じ数字が何度も重複しており その重複には規則性はありません。  ・『Report』シート上で『Data』シートからデータを抽出したいのですが A列に「1」と入力されているデータだけを取り出すのなら「VLOOKUP」でもできますよね・・・・  ・しかし A列に「2」と入力されているデータを「VLOOKUP」関数で選んでも その先頭行のデータしか読み込んできません。  ・『Data』シートのA列に入力している数字から 必要な数字が入力されている行のデータだけを 全て『Report』シートに並べようとした場合 手作業で行うとすると・・・ 『Data』でA列が「1」のデータだけを選び,それを『Report』シートに貼り付ける。次は「2」で実行する。・・・・・という作業を200回繰り返すことになりますが 簡単に行うにはどのようにすればいいのでしょうか? マクロについては あまり詳しくないので できれば関数を使いたいのですが 無理でしょうか? マクロを使うのであれば 分かりやすく教えていただきたいのですが・・・ 勝手なお願いで申し訳ありませんが よろしくお願いします。

  • 3つのブックで指定した列(3箇所)のみを別ブックへ書き込むには?

    何卒、ご教示願います。 初心者です。WinXP、Excel 2002を使用。 同じxlsウインドウ内に3つのブックがあります。 松20060730.xls  竹20060730.xls  梅20060730.xls  …3つは同型内容のデータ それぞれ12シート(1S~12S)ある数字のデータ(最高行170行以下で変動します) の →3つの指定した列のみを→ 同じxlsウインドウ内の別ブック「集計1」(A列と1行が項目名)に書き込む。 1回のマクロ実行で可能なのでしょうか? --------------------------------------- Sub 3つのブックを1つのブックへ()   Call Test1   Call Test2   Call Test3  ブック「集計1」を「昇順に並び替える」  「行列を入れ替える」   End Sub --------------------------------------- A  B  C  D  E  F  G  H  I   ・・・・・・   N・・・ 01 松  2006年07月30日 9:00 あ い 赤 う ま さ こ き 青 ち く と ね 黄     32.3            9.9       6.3          136.3            31.8      1369.3      74.3           424.8      681 赤(C3…全シート同じ) 青(I3 …全シート同じ) 黄(N3…全シート同じ) Sub Test1() 「赤」列の36データ(項目名:赤も含む) を 別ブック「集計1」のB2~B37に 松竹梅の順で 横へ順次書き込む Sub Test2() 「青」列の36データ(項目名:青も含む) を 別ブック「集計1」のB38~B73に 松竹梅の順で 横へ順次書き込む Sub Test2() 「黄」列の36データ(項目名:黄も含む) を 別ブック「集計1」のB74~B109に 松竹梅の順で 横へ順次書き込む 以上のような内容でございますが、何卒よろしくお願い致します。

  • 必要項目(列)データに絞った抽出貼付で。。

    別ブック・シート (一覧) 日付 - 項目1 - 項目2 - 項目3 - 項目4 - 項目5 - 項目6 ↓ 上記のフォーマットで日付データ(連続)で並んでいます これを読み込み、一致する日付データ行でフィルタを掛け、 日付と必要項目(列)データに絞った印刷用シートとして 今開いているブックに作成したいのですが、 当該ブック・シート (印刷用) 日付 - 項目2 - 項目5 - 項目6 ↓ -  項目2合計 - 項目5合計 - 項目6合計 その際、抽出データ項目の各合計も行末尾に追加したい --------------------------- インプットボックス入力日付でフィルタを掛けコピーされたデータ Worksheets("一覧").AutoFilter.Range.SpecialCells(xlCellTypeVisible).Copy この場合、そのまま貼付は PasteSpecial xlPasteAll ですが、 必要項目(列)だけ貼付はどのようにすればいいのでしょうか また、平均30行ほど抽出になるので印刷シートの抽出項目合計セルは、 30行以降にSUM関数を埋め込んでおけば問題はありませんか? (毎日印刷するので上書きが心配です) 最近、行単位での抽出貼付、シート保存を覚えたばかりで、 なんとかそれまでできますが、個別列の抽出貼付で困っています。 SpecialCellsの他に方法はありますか? ご教示願います。

  • エクセルのグラフについて

    どなたか教えてください。 エクセルでグラフを作成しているのですが、たとえば、(イ)のBOOKにデータのシートとグラフのシートがあったとして、まったく同じ様式で、(ロ)のBOOKを作成するときに、(イ)のBOOKを開き、データだけを書き換えて、「名前をつけて保存」で(ロ)のBOOKとして保存しました。データが書き換わっているので、当然、そのデータを参照しているグラフも(イ)のグラフから(ロ)のデータのグラフに書き換わるものと思っていましたが、(イ)のグラフのままでした。「元のデータ」で見ると間違いなく新しいデータを参照していることになっているようですが、なぜなんでしょうか?どこかで操作が間違っているのだと思いますが、あれこれ調べても分かりません。どなたかお分かりの方ご指導をお願いいたします。なお、意味が分かりにくければ補足いたします。

  • 10個のブックからの一覧表作成について

    区域別に分けた10のブックに、同一規格で作成したその区域の集計表シートがあり、複数の条件別集計としているため1シートあたり約30万のデータ数となっています。 現状は、ある条件に該当するものがどうであるのか、を見るために各ブックを開いて該当シートの同一行を別シートにメモ的にコピーし10個のデータを並べて比較している、という極めて原始的なやりかたをしています。 ある条件に合致するデータがどうであるのか、を全区域一覧で比較できるものを作成したいのですが、単純計算すると60列、5万行くらいの表ができることになり、どう作業をすすめるべきか思案しております。 イメージとしては、各ブックの2行目が10行並び、次に3行目が10行並び・・・となるのですが、自分のレベルで考えつくのは、各ブックから1行ずつコピーするか、各ブックの該当行を参照する式を入れて10行ずつコピー、参照先を修正、これを延々と繰り返す。完成したら条件別にシートを分割して見やすいものにする。 この程度しかできないのですが、このレベルでも可能な方策があるでしょうか。

専門家に質問してみよう