
Excelで、発注書を作成しようとしています。
1、Sheet1には<発注先><品名><数量>のデータになっており、
同じ発注先のデータも含んでいます。
<発注先> <品名> <数量>
A社 みかん 10
A社 もも 5
B社 ぶどう 3
C社 みかん 5
C社 バナナ 5
2、このSheet1のデータを各発注先ごとに発注書を作成するため
別シートに用意した発注書フォーマットに貼り付けたい。
(注:発注先は60社ほどあり、オートフィルタで発注先ごと
にコピペしていくのは、困難です)
できれば関数でできればいいのですが、何かよい方法はないでしょうか?よろしくお願いします。
No.2ベストアンサー
- 回答日時:
「別シート」において
1.セル B2 に「発注先」名を入力
2.セル A4 に次式を入力して、此れをセル B4 に複写
=IF(ROW(A1)>COUNTIF(Sheet1!$A$2:$A$1000,$B$2),"",OFFSET(Sheet1!$A$1,MATCH($B$2,Sheet1!$A$2:$A$1000,0)+ROW(A1)-1,COLUMN(A1)))
3.範囲 A4:B4 を下方にズズーッと複写
まだ記載いただいた関数式の意味は理解できていませんが、
そのとおりに作ったら、見事できました。
これで作業がスムーズに行えます。ありがとうございました。
No.4
- 回答日時:
#3です。
追加して、別方法で1つ上げます。(3)ユーザー関数法
エクセルで抜き出しを難しくしているのが、2番目、3番目、・・
の見つかったデータのあり場所(行番号)が判る関数が無いのが原因と考えます。それで自作しました。
ーー
例データは#3と同じ。
I1セルに、抜き出すA社を入れる。
I列 J列 K列 L列(参考)
A社
A社みかん102
A社もも53
A社バナナ87
A社スイカ79
0
ーーー
ユーザー関数の作成
VBEの標準モジュールに
Function fnd(a, b, c)
k = 0
cl = a.Column
For i = 1 To 1000
If Cells(i, cl) = b Then
k = k + 1
Select Case k
Case c
' MsgBox i & "-" & k & "-" & c
fnd = i
Exit Function
Case Is > c
fnd = 0
Exit Function
End Select
End If
Next i
End Function
をコピー張り付けする。
使い方は、この関数には、3つ引数があって
=fnd(探す列、探す会社等の内容,何番目に見つかったものを採るか)
これで、指定番目に、見つかった行番号を返して来ます。
ーー
I2に
=IF(fnd($A1,$I$1,ROW()-1)=0,"",INDEX($A$1:$C$100,fnd($A1,$I$1,ROW()-1),COLUMN(I1)-8))
と入れて、J,K列に式を複写。
I2:K2を下方向に式を複写。
ーー
結果
上表のとおり。
L列はfnd関数だけの、返してくる値を参考までに上げた。
ーーー
Sheet2に抜き出す場合は
A2に
=IF(fnd(Sheet1!$A2,$A$1,ROW()-1)=0,"",INDEX(Sheet1!$A$1:$C$100,fnd(Sheet1!$A1,$A$1,ROW()-1),COLUMN()))
C2まで式を複写。
A2:C2を下方向に式を複写。
結果 Sheet2 A1:C5
A社
A社みかん10
A社もも5
A社バナナ8
A社スイカ7
指定社名A社のセルが別のセルにある場合
社名をセットする列が変わる場合、Column()より適当数を引いて、際右列が1になるよう
にしてください。
関数のわかりやすい解説とVBAまで作成いただき本当にありがとうございました。
VBAに関しては、必ず必要になってくると感じますのでこれを機会に
納得できるよう、理解するつもりです。
エクセルって使う人によってはポテンシャルのほんの数%しか使えていないことに気づかされました。
No.3
- 回答日時:
(1)関数で
#1、#2のご回答
あの式が理解でき、頭に入る方はこれが良い。
(2)関数で
もう少し判りやすいかなという方法。作業列を使います。(自称imogasi方式)Sheet1のA1:E9
社名品名価格社連番
A社みかん10A社1
A社もも5A社2
B社ぶどう3B社1
C社みかん5C社1
C社バナナ5C社2
A社バナナ8A社3
D社栗11D社1
A社スイカ7A社4
ーー
E2の式は
=A2 & COUNTIF($A2:A$2,A2)
式を下方向に複写。
結果
上記
ーーー
I1に指定会社名を入れる。
I2に
=IF(ROW()-1>COUNTIF($A$2:$A$100,$I$1),"",INDEX($A$2:$C$100,MATCH($I$1&ROW()-1,$E$2:$E$100,0),COLUMN(I2)-8))
と入れて、J、K列に式を複写。
I2:K2を範囲指定し、K2で+ハンドルを出して下へ引っ張る。
ーー
I、j、k列をSheet2に出す場合は、Sheet1のA-Dの参照には「Sheet1!」をつければできる。
No.1
- 回答日時:
◆Sheet1
A B C
1 <発注先> <品名> <数量>
2 A社 みかん 10
3 A社 もも 5
4 B社 ぶどう 3
5 C社 みかん 5
6 C社 バナナ 5
◆Sheet2
A B
1 発注書
2 発注先 C社
3 品名 数量
4 みかん 5
5 バナナ 5
◆Sheet2のB3に、発注先を入力します
A4=IF(ROW(A1)>COUNTIF(Sheet1!$A$1:$A$10,$B$2),"",INDEX(Sheet1!B$1:B$10,SMALL(INDEX(SUBSTITUTE(N(Sheet1!$A$1:$A$10=$B$2),0,10^5)*ROW(Sheet1!$A$1:$A$10),),ROW(A1))))
★右と下にコピー
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel 関数 vlookupなどの使い方について質問です。 シート1に品番、商品名、単価、発注条 6 2022/06/15 19:16
- Excel(エクセル) Excelグラフについて 1 2023/05/12 16:26
- その他(ビジネススキル・経営ノウハウ) 在庫管理のこの問題が分かりません。どなたか解説お願いします 2 2022/04/18 18:35
- 数学 在庫管理のこの問題が分かりません。どなたか解説お願いします 4 2022/04/18 22:19
- 数学 在庫管理のこの問題が分かりません。どなたか解説お願いします 2 2022/04/18 22:21
- Excel(エクセル) VBAで同フォルダ内の別ブックを開かず参照して条件の一致する行の指定セルを抽出するには? 1 2022/07/21 19:29
- その他(パソコン・スマホ・電化製品) 献立の発注をする際、Excelの複数のページ(日付別)から醤油、砂糖、みりんなど特定の食材名の発注量 1 2023/01/02 12:35
- Excel(エクセル) Excelにて 別シートからのデータ参照方法 2 2022/12/07 13:00
- 経営情報システム 在庫管理のこの問題が分かりません。どなたか解説お願いします。 0 2022/04/18 16:02
- Excel(エクセル) エクセル MID関数 9 2022/06/14 10:04
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【Officer360?Officer365?の...
-
勤怠表について ABS、TEXT関数...
-
Excelで4択問題を作成したい
-
エクセル
-
エクセルの関数について
-
エクセルの表で作業してます。 ...
-
グループごとの個数をカウント...
-
エクセルの複雑なシフト表から...
-
エクセルについて
-
エクセルシートの見出しの文字...
-
エクセル GROUPBY関数について...
-
【マクロ】実行時エラー '424':...
-
Excelに貼ったXのURLのリンク...
-
Amazonでマイクロソフトオフィ...
-
グループごとの人数のカウント
-
【マクロ】変数に入れるコード...
-
UNIQUE関数の代用
-
ページが変なふうに切れる
-
空白のはずがSUBTOTAL関数でカ...
-
グループごとの人数のカウント
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
9月17日でサービス終了らし...
-
エクセル
-
【マクロ】WEBシステムから保存...
-
エクセルの循環参照、?
-
エクセル ドロップダウンリスト...
-
エクセルのdatedif関数を使って...
-
特定のセルだけ結果がおかしい...
-
【マクロ】A列にある、日付(本...
-
【マクロ】EXCELで読込したCSV...
-
【マクロ】アクティブセルの時...
-
【エクセル】期限アラートについて
-
iPhoneのExcelアプリで、別のシ...
-
【関数】同じ関数なのに、エラ...
-
Excelの新しい空白のブックを開...
-
【マクロ】3行に上から下に並...
-
【マクロ】宣言は、何のために...
-
VBA チェックボックスをオーバ...
-
Excelについての質問です 並べ...
-
【マクロ】アクティブセルの2...
-
【関数】不規則な文章から●●-●●...
おすすめ情報