• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:BookAのデータを元にBookBに文字列を抽出する。)

BookAのデータを元にBookBに文字列を抽出する方法

このQ&Aのポイント
  • BookAのデータを利用してBookBから文字列を抽出する方法について解説します。
  • BookAには特定のデータがあり、それをBookBから抽出したい場合、ドロップダウンリストを使用して抽出できます。
  • 具体的には、BookAの特定のセルに選択した値に応じて、BookBの別のセルから文字列を抽出することが可能です。

質問者が選んだベストアンサー

  • ベストアンサー
noname#192382
noname#192382
回答No.1

次のマクロをコピーして実行してみてください。シート1のデータを並べ替えたものがシート2に作成されます。これでよろしいのでしょうか。 Sub Macro2() ' ' Macro2 Macro ' マクロ記録日 : 2010/10/24 ユーザー名 : ' ' Dim mygyo As Integer, myco As String, myendgyo As Integer, myarray1 As String, myarray2 As String, myretu As Integer Dim mystartgyo As Integer, newgyo As Integer Sheets("Sheet1").Select myco = Cells(1, 2) myendgyo = Cells(1, 4) Sheets("Sheet2").Select For mygyo = 2 To myendgyo '社名 Cells(mygyo, 1) = myco Next For mygyo = 2 To myendgyo 'その他 Sheets("Sheet1").Select myarray1 = Cells(mygyo, 2) myarray2 = Cells(mygyo, 3) Sheets("Sheet2").Select Cells(mygyo, 2) = myarray1 Cells(mygyo, 3) = myarray2 Next Sheets("Sheet1").Select myco = Cells(1, 3) mystartgyo = Cells(1, 4) + 1 myendgyo = Cells(1, 4) + Cells(1, 5) - 1 Sheets("Sheet2").Select For mygyo = mystartgyo To myendgyo '社名 Cells(mygyo, 1) = myco Next MsgBox (myendgyo) For mygyo = 2 To myendgyo 'その他 Sheets("Sheet1").Select newgyo = Cells(1, 5) - Cells(1, 4) + mygyo + Cells(1, 5) - 1 myarray1 = Cells(mygyo, 4) myarray2 = Cells(mygyo, 5) Sheets("Sheet2").Select Cells(newgyo, 2) = myarray1 Cells(newgyo, 3) = myarray2 Next End Sub

kamar3
質問者

お礼

ご回答いただきありがとうございます。 とりあえず、これでやってみます。 また何かありましたらよろしくお願いします。

その他の回答 (1)

noname#192382
noname#192382
回答No.2

No1ですが、大事なことを忘れていました。A社B社各会社のデータ行の最終行の数字(ここでは4,4)をD1,E1に入力しておいてください。

関連するQ&A