• 締切済み

【エクセル2003】既に有る表から別形式に並び替え

Excel2003を使用しています。 既にある表(添付画像内Book1)より別形式(添付画像Book2)へ並び替えするにはどういった方法がございますか? 今まではBook1を開いて、Book2へチクチクコピペしていましたが、作業効率やコピペミスが多いためマクロ等で一括変換できないかと思いました。 補足 ・Book1のデーターはNo1~200程あります。 ・基本的に金額や件数の合計などは必要ないので、全て文字列でOKです。 ・当方、ExcelのマクロやVBは初心者です。 以上、宜しくお願いいたします。

みんなの回答

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

>具体的には、、 1)Book1(C6)C6-M6の結合セル→Book(C2) 2)Book1(C7)C7-M7の結合セル→Book(C3) 3)Book1(AB6)結合されていないセル→Book2(L2)、、、 というように15項目それぞれ貼り付け直してます。 上記の説明だと、15項目のデータが1行(2行目)に配置されていないようですが(C3セルは3行目)間違いなのでしょうか? また、再度お尋ねしますが、次のNo2以下のデータは何行ごとに入力されているのでしょうか? この2つがわかれば1行目だけの15項目のデータを並べ替えてリンク貼り付けした15のセルを作成し、これらのセルとその下の空白セルを次の行分だけ含めてオートフィルコピーして、ジャンプダイアログから空白セルを選択して右クリックから「削除」すれば、ご希望の結果の数式を詰めて表示することができます。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

表のどの部分を何列に転記したいのか,さっぱり不明なのですが。 簡単な説明: たとえばSheet1の6行2列のセルをSheet2の2行1列に,7行2列のセルをSheet2の2行2列に,6行12列のセルをSheet2の2行3列に,それぞれ移したい 2つ目の枠は12行から始まって同じ配置になっている シート2の1行目には,必要な項目を記入しておく シート2の「6行」1列に =Sheet1!RC2&"" シート2の6行2列に =Sheet1!R[1]C2&"" シート2の6行3列に =Sheet1!RC12&"" などのように,ふつーにシート1を参照するだけの数式をベースに作成する シート1の1つ目の枠が6行から始まってるので「6行目に」作成するので間違えないこと シート1の1枠目が「6行目から11行目まである」という前提で,シート2の「6行から11行までを」行選択し,下向けに200枠分オートフィルドラッグする (それぞれ6行目,12行目,18行目…に1枠,2枠,3枠…の所定の値が表示されることを確認する。出来てないときは最初からやり直す) シート2の表範囲を丸ごと選択する Ctrl+Gを押す 現れたダイアログでセル選択をクリック,更に「空白セル」にマークしてOKする 6行,12行,18行…の隙間の空白セル範囲が飛び飛びに選択されるので,右クリックして削除から上に詰める 手順は以上です。 シート1の1枠,2枠,3枠…の所定のセルの値が,そのままシート2の2行目3行目4行目…に並びます。

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

ご希望の操作がBook1のデータをBook2のデータベースシートに「追加」したいということではなく、単純に規則的に並んでいるBook1の多数のデータを、整列しなおして表示させたいということなら、関数で処理することが可能です。 この場合は、どのセルの値をどの列に配置したいのか、(画像が小さくて見えないので)文章で説明してください。 すなわち1つ目のNo1データのセル位置と配置したい列、および次のデータのセル位置(1つのデータが何行単位で構成されているか)を提示されるとよいと思います。

takerux7
質問者

補足

MackyNo1さま 早速の回答ありがとうございます。補足をさせていただきます。 仰るとおり、Book1の多数のデータを、整列しなおして表示させたいという事です。 画像が小さいのは想定外でした。申し訳ございません。 文章で説明いたしますと、Book1の15項目(結合されたセルを含む)の内容をBook2の横型一覧形式に再配置したいという事です。 Book1はNo1~200有り15項目が1つのカタマリとして表記されていますので、単純に列や行の並び替えではBook2の横型一覧形式には出来ませんでした。 具体的には、、 1)Book1(C6)C6-M6の結合セル→Book(C2) 2)Book1(C7)C7-M7の結合セル→Book(C3) 3)Book1(AB6)結合されていないセル→Book2(L2)、、、 というように15項目それぞれ貼り付け直してます。結合されていないセルもございます。

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

画像が小さくて、ご希望の操作の詳細が分からないのですが、Book1のデータをBook2のデータベースに取り込みたいという意味なら、VBAで対応することになります。 しかし、VBA処理したデータは「元に戻す」操作ができないので、コードに問題があると重大な問題になる可能性があり、VBA初心者(マクロコードの意味がすべて理解できない場合)にはお勧めできません。 Book1が請求書のようなデータで、そのデータをBook2のようなデータベースに取り込みたいなら、Excelアドインのデータ追跡機能付きテンプレートウィザードを利用するのがお勧めです。 http://www.ka-net.org/blog/?p=4658 http://kokodane.com/tec3_25.htm 初心者でも理解できる簡単なマクロを使って対応するなら(マクロの記録だけでも対応することが可能です)、たとえばBook1の空白セル範囲に、「=D2&""」のような形で、コピーしたいセル範囲をそのままBook2に貼り付けられるように配置しておき、このセル範囲をコピーして、そのデータをデータベースの下に値貼り付けして追加するような手順が簡単です。

関連するQ&A