• ベストアンサー

よろしくお願いいたします

よろしくお願いいたします sheet1には、A列2行目からは、車種名が、400行ぐらい記載されており、A2列からV2列ぐらいまで店舗名が記載されており、各店にどの車が何台ぐらい置いてあるか、記載されてます。sheet2のA1に店名を打ち込むと、こなsheet2のA3~B4から車の各店の在庫数にもよりますが、下に店に置いてある在庫一覧を表示させたいのですが、どのようにしたらいいのでしょうか?よろしくお願いいたします。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

>A列2行目からは、車種名が、400行ぐらい記載されており >A2列からV2列ぐらいまで店舗名が記載されており とありますが、それですとA2以下には車種名が入力されているのと同時に、A2~V2のセル範囲には店舗名が記載されている事になり、A2セルには車種名と店舗名のどちらが入力されている事になるのか解りません。  ですから、ここはA2セルには何も入力されておらず、店舗名が記載されているのはA2~V2のセル範囲ではなくB2~W2のセル範囲であり、車種名が入力されているのはA2以下ではなくA3以下であるものとします。  それと >こなsheet2のA3~B4から車の各店の在庫数にもよりますが、下に店に置いてある在庫一覧を表示させたい という文面では意味不明ですので、取りあえず仮の話として「sheet2のA3~B4ではなくSheet2のA列~B列の4行目以下に、Sheet2のA1セルに入力した車種の在庫がある店舗名と、在庫数を、『在庫数の多い順』に表示させる」ものとします。  その場合、まず、Sheet2のA3セルに「店舗」、Sheet2のB3セルに「在庫数」などという具合に、Sheet2のA3セルとB3セルに何らかの文字列を入力して下さい。  次に、Sheet2のB4セルに次の関数を入力して下さい。 =IF(OR($A$1="",B3=""),"",IF(ROWS(B$4:B4)>IFERROR(COUNT(INDEX(Sheet1!$B:$W,MATCH($A$1,Sheet1!$A:$A,0),)),0),"",LARGE(INDEX(Sheet1!$B:$W,MATCH($A$1,Sheet1!$A:$A,0),),ROWS(B$4:B4))))  次に、Sheet2のA3セルに次の関数を入力して下さい。 =IF(ISNUMBER($B4),INDEX(Sheet1!$B$2:$W$2,MATCH($B4,OFFSET(Sheet1!$B$2:$W$2,MATCH($A$1,Sheet1!$A:$A,0)-ROW(Sheet1!$A$2),IF($B3=$B4,MATCH(A3,Sheet1!$B$2:$W$2,0),0)),0)+IF($B3=$B4,MATCH(A3,Sheet1!$B$2:$W$2,0),0)),"")  次に、Sheet2のA4~B4のセル範囲をコピーして、Sheet2のA列~B列の5行目以下に貼り付けて下さい。  以上です。

関連するQ&A

  • エクセルでのマクロを教えて

    下記のようなものをみたすマクロは組めますか? ファイルにシートが何種類かあります。 sheet1には各店の集計データーがあります。 その中にA列には集計の項目名がAZ列まであり 1行目には店舗名が10種類あります。 sheet2からはsheet名をsheet1に記入されている1行目にしている店舗名にしてあります。 またA列には集計の項目名がありますが sheet1にある項目と全く同じではなく 項目は少なくなっています。 また、sheet2からの店舗名にはsheet1の集計表にはない 店舗名もあります。 このsheet1のデーターをもとに sheet2の1行目の項目と一致する項目の値や数字を sheet1からコピーするというものです。 よろしくお願いします。

  • エクセルでデータ検索(抽出)ファイルを作成したい

    エクセルでわからない事があり投稿させて頂きました。 各店の在庫データをシート2.シート3.シート4へ貼り、 シート1に商品コードを入力する欄を作り、入力したコードの商品在庫が各店舗ごとに表示されるファイルを作成したいと思ってます。 (検索したコードの商品在庫数量をシート1のC列に表示させわかりやすくしたいです) 在庫データのファイルはC列に商品コード/F列に在庫数量が記載されており、商品コードでひっかかった行のF欄の数値をシート1のC列に出せるようにしたいのですが可能でしょうか? 過去ログは確認してみたもののわからず・・・ 可能かどうか教えて頂けると幸いです。

  • エクセルでの関数にかなり詳しい方お願いします!

    エクセル関数に詳しい方、教えて下さい!! ABC分析を行なうに当たって、まず各店舗(5店舗)のデータ(品名とそれぞれの売上高)をエクセル上で横に並べ、同一品目については売上高の合計を算出しないといけない作業があります。 A列:品名 B列:店舗(1)の売上高 C列:店舗(2)の売上高 D列:店舗(3)の売上高 E列:店舗(4)の売上高 F列:店舗(5)の売上高 各店輔で在庫品目は異なり、各店のデータは別々にエクセル形式でFDに入っています。今までは、1つのシート上に各店輔のデータを地道に、コピー・ペースト→五十音順に並べ替え→同じ品目名については1つだけ残して同じ品目は削除し、売上高を手作業で横1列に並べる、という作業を行なっていました。 しかし、現在在庫品目数は1000を超え、その作業に膨大な時間がかかってしまいます。3店舗分に関してはJANコード?のようなもので管理出来るので、このコードを使って何か関数を当てはめ、時間の削減を出来ないでしょうか? 例えば、各店舗のデータを別々のシートにコピーし、コードが同一であれば、品目名とその売上高の合計を別のシートに算出する・・・ということは出来るでしょうか? 文章で書けることではないかもしれませんが・・・何か少しでもアドバイスいただけると嬉しいです。よろしくお願い致します。

  • エクセル:複数シートをまとめた集計方法

    店の売上管理のために以下のような表があります。 ・月ごとにシートを分けて集計(1月~12月のシート) ・各シートは、4列でそれぞれの列は、「都道府県名」「地区名」「店名」「売上」で構成。各店は「都道府県名」「地区名」「店名」の3つの情報で特定 ・行数(店数)は各月でまちまち(売上があった店のみ記載のため)ですが、数千以上は存在 ※従って地道にコピーして重複を消してという作業は非効率になってしまう。。 上記表の集計を1つのシートで次のようにまとめたいと考えています。 ・15列構成。(内訳は「都道府県名」「地区名」「店名」「1月の売上」~「12月の売上」) ・重複した行が無い。例えば1月、4月、12月と売上があった店も1行で管理したい。 以下のような手順を考えましたが、良い手順が思いつきません。そもそも実現可能かもわかっておりません。 他の方法も含めて良い案があれば教えてください。お願いします。 手順1:1月度のシートの「都道府県名」「地区名」「店名」をコピー 手順2:2月以降のシートに関しては、それ以前の月のシートには登場していない「都道府県名」「地区名」「店名」のみ追加でコピー 手順3:IFやVLOOKUP関数などを駆使して、各店舗毎の月間売上を各月のシートの売上値を参照して代入??

  • Excelでの文字列抽出

    Excelで文字列の抽出とそれを並べる方法を教えてください。 関数だけを用いて実現できるのか、マクロを使わなければできないのかも分かりません。 この関数をこの様に使えばよいというのを教えていただけると幸いです。 やりたいことは、下記条件で、シート2のB列にシート1のG列~P列までに登録されている担当者名に該当するB列の店名を4店まで抽出したいのです。 分かりづらくて申し訳ございませんが、よろしくお願い致します。 ------------------------ シートが2枚(シート1/シート2)あります。 シート1  B列は4行毎に結合されており、店名が登録されています。  G列~P列までは1行目は担当者名、2,3,4行目は補足情報が登録されています。  シート2  A列に担当者名が入っています。(4行毎に結合しています)  B列にA列の担当者名に該当する、シート1の店名を4店まで登録したい。

  • エクセルについてです。エクセルの関数でが、シート1にデータが入っていま

    エクセルについてです。エクセルの関数でが、シート1にデータが入っています。シート1の1行目には見出しがあり、2行目からは、データが入っています。A列には、店舗名12店舗あります、12店舗ありますが、日付がD行にあり、A列にはランダムに入っています。100行目まで入っています。B列には、データ(1)、c列には、データ2が入っています。  シート2には、1行目には見出し。A列には、店舗名、A2は、あ店。A3は、い店。A4は、う店。A5は、え店。A6は、お店。A7は、か店。A8は、き店。A9は、く店。A10は、け店。A11は、こ店。A12は、さ店。A13は、し店。と入っています。シート2には、シート1のA店の合計を。シート2には、シート1のB店の合計を・・・・・あとは、A13まで同じ要領で合計を入れたいのです。どうやったらいいですか?

  • AとBに同じ文字があった場合Cを読み込む

    質問です。 エクセルでシートを2つ使用し、 sheet1のA列とsheet2のA列を比べ同じ単語が記載されていた場合に、 sheet2の同行B列のセルの内容をsheet1のB列に表示させたい場合は sheet1のB列にどのような関数式を入力すればいいでしょうか。 例として、sheet1が商品一覧シート sheet2が仕入れ先一覧シートで sheet1 A列5行目には 黄色いたんぽぽ と記載があり([]も含む) sheet2 A列8行目には たんぽぽ仕入れ先 と記載のあるセルがあって、 sheet1 B列5行目に、sheet2 B列8行目に記載のある「蒲公英株式会社」を表示させたい 上記の場合ですと、たんぽぽ という単語だけを認識させたいのです。 ただし、単語に関してはある言葉(この場合はたんぽぽ)を指定せずに、sheetA列x行目(比較したい単語の記載のある行)とsheet2A列全体を比べて 同じ単語があれば上記のように表示させる という内容ができればと思っています。 セル内が一致した場合のものや単語を比較して○×を付けるという質問はあったのですが、セル内の一部が一致した場合というものが見つかりませんでした。 わかりづらく式も載せる事ができずすみませんが、詳しい方がいらっしゃいましたらご教授ください。

  • Excel シートを自動作成、セル値をシート名に 

    エクセルのマクロの自動記録で作業の効率化を図りたいのですがうまく出来ません、ご教示いただけ無いでしょうか。 (VBAは初心者です。本とネットを検索しながら作成していたのですが、 急きょファイルを作成しなければいけない状況になりました。) ■Excel2010 ■ブック詳細 ・Sheet"企業一覧" → 行ごとに企業名、シート名が記載された表があります。   A列 企業名   B列 シート名 ・Sheet"マスタ" → 見積書のフォーマットがあります。   A4 企業名  ■希望作業 シート「企業一覧」の企業ごとにボタンを作り、ボタンを押すと 1."マスタ(Sheet)"のコピーが作成され、 2.コピーされたシートのA4セルに"企業一覧(Sheet)"A列の企業名が記載され、 3.コピーされたシート名に"企業一覧(Sheet)"のB列のシート名が記載され、 4."企業一覧(Sheet)"のB列のシート名に新しいシートへのハイパーリンクを付け 5."企業一覧(Sheet)"に戻る ※下記作業ができません。 ・コピーされた新しいシートに、シート名が付けられない。 ・"企業一覧(Sheet)"のシート名にコピーされた新しいシートへのハイパーリンクを付けられない。 ※シートのコピーは可能なら"企業一覧(Sheet)"の企業名表記順に作成したいと思っています。 ※各企業行ごとにボタンを作るのは面倒なのですが、 企業名/シート名の表記がよく変更になるため、入力と同時にマクロが実行されるのではなく、 何かワンクッションを置きたいと思っています。 ※シートのコピー作成、企業名の記載までは出来たのですが、 その他の作業ができません。よろしくお願いいたします。 --------------------------- Sub Sheet作成() ' ' Sheet作成 Macro ' ' Sheets("マスタ").Select Sheets("マスタ").Copy After:=Sheets("マスタ") Range("A4:B4").Select ActiveCell.FormulaR1C1 = "=企業一覧!R8C1" Range("C4").Select Exit Sub End Sub --------------------------

  • EXCELの表で”○行が空白”の場合のみ別シートに列ごと反映することはできますか?

    車の在庫表をEXCELで作っています。 1.1シート目に”車の一覧表”を作成 2.一覧表のP行が空白の場合は在庫という意味なのですが   空白のP行のみを、2シート目に反映したい場合はどのようにすれば良いのでしょうか。P行が空白の列を全て自動的に別シートに反映したいです。 ご存知の方、是非教えていただければ嬉しいです。 宜しくお願い致します。   

  • 条件のあったシートへデータを転記するマクロ

    よろしくお願いします。 ブック内にシート名でマスターシートと在庫日報入力シートの2つがあります。在庫日報シートのA1に日付、A列3行目以降に商品コード、B列3行目以降に各商品名、F列3行目以降に各商品の在庫数量が入っており、毎日更新されます。マスターシートには縦A列3行目以降に日付が入っており、また横1行目(A1,B1,C1....)に各商品名が百以上記載されています。今まで、以下のマクロで在庫日報入力シートの在庫数量をマスターシートの対応するセルに転記していました。(縦の日付を検索し、横の商品名を検索し対応する場所に在庫数量を転記) Private Sub CommandButton1_Click() Application.DisplayStatusBar = True Dim LastR, idxR As Long, trgR, trgC If MsgBox("日付は正しいですか", vbQuestion + vbOKCancel) = vbOK Then With Worksheets("在庫日報入力") LastR = .Range("A65536").End(xlUp).Row trgR = Application.Match(.Cells(1, 1), Worksheets("マスター").Range("A:A"), 0) For idxR = LastR To 3 Step -1 trgC = Application.Match(.Cells(idxR, 1), Worksheets("マスター").Range("1:1"), 0) If IsNumeric(trgR) And IsNumeric(trgC) Then Worksheets("マスター").Cells(trgR, trgC + 1) = .Cells(idxR, 6) Else .Cells(idxR, 1).Interior.ColorIndex = 3 End If Application.StatusBar = "マスターシートに転記中・・・進行状況 " & idxR & "" Next idxR End With Application.StatusBar = False MsgBox "終了しました。(処理件数=" & LastR- 3 & "件)", vbOKOnly: Exit Sub End If End Sub 今までこれで良かったのですが、今度、マスターシートを削除して、各商品名毎にシートを作成します。そのため、それぞれの商品名シートに在庫日報シートのデータを転記するように変えたいのです。商品名シートはそれぞれA列3行目以降に日付が、となりのB列に在庫数が入るようになっています。 在庫日報シートの各商品に対応した商品名シートを見つけて、そのA列から在庫日報と同じ日付を見つけて、その行のB列に在庫日報シートの在庫数量を転記する。というものです。商品名シートは百以上あり名前は文字列です。 今までのマクロは教えてgooで教えていただきながら作りました。すいませんが、またご教授をお願いします。

専門家に質問してみよう