No.6ベストアンサー
- 回答日時:
№5は誤り。
訂正します。. A B C D E F G H I J K
1| キー
2| H1-A H1-1 H1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
3| H1-A H1-3 H1-4 D1-1 D1-2 D1-3 D1-5 D1-7 D1-8
4| H1-A H1-5 H1-6 D1-1 D1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
5| H2-A H2-1 H2-2 D1-2 D1-3 D1-4 D1-5 D1-8
6| H3-A H3-1 H3-2
7| H3-A H3-3 H3-4 D1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
1. 以下を入力します。
・L2セルには、=IF(A2<>A3,1,0)
・M2セルには、=IF(D2<>""," "&D2,"")&IF(E2<>""," "&E2,"")&IF(F2<>""," "&F2,"")&IF(G2<>""," "&G2,"")&IF(H2<>""," "&H2,"")&IF(I2<>""," "&I2,"")&IF(J2<>""," "&J2,"")&IF(K2<>""," "&K2,"")
・N2セルには、=IF(A2=A1,N1&M2,A2&M2)
2. L~N列をそのまま7行(または、500行)下へコピーします。
3. 1行目全体を選択し、[データ][フィルタ][オートフィルタ]を実行しプルダウンメニューを生成します。
4. L列のプルダウンメニューから「1」を選択すると、N列に希望の表示が実現しコピーして貼り付けると以下のようになります。
H1-A D1-3 D1-4 D1-5 D1-6 D1-7 D1-8 D1-1 D1-2 D1-3 D1-5 D1-7 D1-8 D1-1 D1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
H2-A D1-2 D1-3 D1-4 D1-5 D1-8
H3-A D1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
No.5
- 回答日時:
. A B C D E F G H I J K
1| キー
2| H1-A H1-1 H1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
3| H1-A H1-3 H1-4 D1-1 D1-2 D1-3 D1-5 D1-7 D1-8
4| H1-A H1-5 H1-6 D1-1 D1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
5| H2-A H2-1 H2-2 D1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
6| H3-A H3-1 H3-2 D1-1 D1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
7| H3-A H3-3 H3-4 D1-1 D1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
L2セルには、=IF(A2<>A3,1,0)
M2セルには、=IF(D2="",0,1)&IF(E2="",0,1)&IF(F2="",0,1)&IF(G2="",0,1)&IF(H2="",0,1)&IF(I2="",0,1)&IF(J2="",0,1)&IF(K2="",0,1)
N2セルには、=FIND("1",M2,1)-1
O2セルには、=" "&D2&" "&E2&" "&F2&" "&G2&" "&H2&" "&I2&" "&J2&" "&K2
P2セルには、=IF(A2=A1,P1&RIGHT(O2,LEN(O2)-N2),A2&RIGHT(O2,LEN(O2)-N2))
と入力します。
L2~P2セルを7行目までコピーしてください。
1行目全体を選択し、[データ][フィルタ][オートフィルタ]を実行しプルダウンメニューを生成します。
L列のプルダウンメニューから「1」を選択すると、P列に希望の表示が実現しコピーして貼り付けると以下のようになります。
H1-A D1-3 D1-4 D1-5 D1-6 D1-7 D1-8 D1-1 D1-2 D1-3 D1-5 D1-7 D1-8 D1-1 D1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
H2-A D1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
H3-A D1-1 D1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8 D1-1 D1-2 D1-3 D1-4 D1-5 D1-6 D1-7 D1-8
No.4
- 回答日時:
>H(ヘッダー部)D(ディテール部)共、複数項目で構成されている
検索条件や出力結果が複数項目で構成されるのであれば、
それ自体がどのような構成か提示しないとVBAとして書きようがないかと・・・・
とくにDが複数列にわかれちゃうと、命題のような出力は無理だと思いますが?
ロジック的には単純に検索列の上から順にデータをループ処理し
それぞれ結果となる配列に流し込んで
最後に配列をセルに反映する単純作業でしょう
書き方が悪かったと思いますが
ヘッダー部が3項目、ディテール部が8項目のそれぞれ固定項目です。
具体的には
A,B,C列がヘッダー部、D~K列がディテール部のデータです
(複数件が同じヘッダー)
1ヘッダー部(キーはA列)に同じヘッダーを持つ複数(最大10件)のディテールを横並びにしたいのです。
(横の長さはディテールの数によって違います)
元データー件数は約500件、生成後の件数は約120件です
再度の指導をお願いします。
No.3
- 回答日時:
#1です
VBAで処理してもいいですが、これくらないなら関数で無理やりやった方が早いかも
元データ
* A B
1 H1 D1
2 H1 D2
3 H1 D3
4 H2 D1
5 H3 D1
6 H3 D2
C1に「=A1&"_"&COUNTIF(A1:A$1,A1)」と書き、下方向にコピペしてください
ようはA列に同じデータがでてくる順番です。
なおセパレータに「_」を利用しました、仕様上問題があるなら別の記号をつかってください
結果
* A B C
1 H1 D1 H1_1
2 H1 D2 H1_2
3 H1 D3 H1_3
4 H2 D1 H2_1
5 H3 D1 H3_1
6 H3 D2 H3_2
出力したい場所を仮に1列あけてE列以降だとします
まずA1~A6をコピーしてE2にペーストして、エクセルのメニューから「重複の削除」をします
さらにF1から右方向に1,2,3・・・と適当なかず増やして書いておきます
するとこう
* A B C D E F G H I J K L
1 H1 D1 H1_1 * * 1 2 3 4 5 6 7
2 H1 D2 H1_2 * H1
3 H1 D3 H1_3 * H2
4 H2 D1 H2_1 * H3
5 H3 D1 H3_1 *
6 H3 D2 H3_2 *
あとはF2に「=IF(ISNA(MATCH($E2&"_"&F$1,$C:$C,0)),"",INDEX($B:$B,MATCH($E2&"_"&F$1,$C:$C,0),1))」
とかいてコピーし、(上の例だと)L4まで範囲を選択してはりつけます。
最終結果
* A B C D E F G H I J K L
1 H1 D1 H1_1 * * 1 2 3 4 5 6 7
2 H1 D2 H1_2 * H1 D1 D2 D3
3 H1 D3 H1_3 * H2 D1
4 H2 D1 H2_1 * H3 D1 D2
5 H3 D1 H3_1 *
6 H3 D2 H3_2 *
No.2
- 回答日時:
A B C D
1|
2| H1 D1 =IF(A2<>A3,1,0) =IF(A2=A1,D1&" "&B2,A2&" "&B2)
3| H1 D2 =IF(A3<>A4,1,0) =IF(A3=A2,D2&" "&B3,A3&" "&B3)
4| H1 D3 〃 〃
5| H2 D1 〃 〃
6| H3 D1 〃 〃
7| H3 D2 〃 〃
(1) 1行目は[挿入][行]などで空けてデータが1行目に来ないようにします。見出し行が元々1行目の場合はそのままでOKです。
(2) C列、D列に上記のように入力します。先頭セルだけ入力したら下にコピーしていけばOKです。
(3) 1行目全体を選択し、[データ][フィルタ][オートフィルタ]を実行しプルダウンメニューを生成します。
(4) C列のプルダウンメニューから「1」を選択すると、希望の表示が実現しコピーして貼り付けると以下のようになります。
H1 D1 D2 D3
H2 D1
H3 D1 D2
No.1
- 回答日時:
条件の追加があった方がよいかと
(1)データだぶり
H1 D1 ←これ
H1 D1 ←これ
H1 D2
H1 D3
H2 D1
H3 D1
H3 D2
のようなダブリがあった場合、どう表示したいのか?
もしくは絶対にダブリはないのか
(2)抜け番
H1 D1
H1 D2
H1 D3
H2 D1
H3 D1
H3 D3 ←これ
のように、D2が発生せずにD3が発生した場合
結果は
H1 D1 D2 D3
H2 D1
H3 D1 (ぬけ) D3
になるのか、左詰めをして
H1 D1 D2 D3
H2 D1
H3 D1 D3
になるのか、もしくは抜け番は絶対に発生しないのか
また列の表示順はとくに気にしなくてよいのか・・・など
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelのマクロについて 1 2023/04/17 17:22
- Visual Basic(VBA) エクセル VBA 条件付き書式 簡略化したい 2 2022/06/02 17:46
- Visual Basic(VBA) 【VBA】先月分の取得ができない理由が分かりません。 2 2022/04/24 11:16
- 数学 数1 この問題の(3)で少なくとも一方が実数解をもつ。のとき①②の式をそれぞれD1,D2とした時D1 5 2023/08/01 01:46
- 数学 【 数I 二次方程式の実数解 】 問題 ※写真の(2) 解答 いずれか一方のみが実数解を持つため に 1 2022/06/25 17:36
- Excel(エクセル) Excelにの以下の設定方法について教えてください! C列にデータ入力の設定をしています。(出、入を 3 2022/06/22 01:33
- 物理学 平行板コンデンサに誘電率ε1を持つ誘電体1と誘電率ε2を持つ 誘電体2を隙間なく詰める。極板の面積を 1 2023/08/10 22:46
- Excel(エクセル) EXCEL 行内のデータを2行に分けて、表を作り直したいのです。教えてください。 5 2023/06/25 14:00
- Visual Basic(VBA) vbaで色付けされたセルを除外したいのですが 5 2023/01/28 17:22
- Visual Basic(VBA) 複数シート一括作成後に、特定範囲の数式は値で貼り付けしたい 3 2022/10/07 11:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ファイルが壊れて読み取れませ...
-
データベースファイル(.db)を開...
-
最新の日付とその金額をクエリ...
-
警察はスマホに保存した動画や...
-
Accessを開きなおすとテキスト...
-
Accessフォームからパラメータ...
-
accessでのフォームの連携について
-
googleフォームでインストール...
-
ACCESSのSQLで、NULLかNULLでな...
-
データベースソフトのTCARDにつ...
-
エクセル 顧客管理表に担当ごと...
-
CSVファイルでテキストの改行の...
-
旧filemakerで和暦(令和など)...
-
QSL でのフォーム画面作成について
-
エクスプローラーで「2つの条件...
-
QRコードとバーコードについて
-
.flex-direction プロパティは...
-
リスト形式の表とデータベース...
-
Q&Aフォームを作成したいのです...
-
ファイルメーカーへネットワー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
データベースファイル(.db)を開...
-
Accessを開きなおすとテキスト...
-
ACCESSのSQLで、NULLかNULLでな...
-
警察はスマホに保存した動画や...
-
CSVファイルでテキストの改行の...
-
エクセルのフィルタ抽出が固まる
-
構文エラー:演算子がありませ...
-
最新の日付とその金額をクエリ...
-
QRコードとバーコードについて
-
QSL でのフォーム画面作成について
-
Notion@リレーション値の取得...
-
エクスプローラーで「2つの条件...
-
更新クエリをリンクデータベー...
-
Accessのリンクテーブルについて
-
「1004:アプリケーション定義...
-
顧客データベースを作る場合、...
-
帳票フォームでのあるコンボボ...
-
googleフォームでインストール...
-
DocuWorksでの印刷
-
20万行あるデータを動かしたい
おすすめ情報
理解度が悪く申し訳ありませんが
H(ヘッダー部)D(ディテール部)共、複数項目で構成されているので教えていただいた操作が理解できません。
解説を加えていただくか、VBAでの方法を教えていただけないでしょうか?
昔プログラムの仕事もしていたのでロジックはわかると思います。
H(ヘッダー部)D(ディテール部)共ダブリはありません。
1件のデータが多品1葉の形式になります
(1件のデータは1つのヘッダー部と複数(件数はまちまち(最大で10件))になる)
ヘッダー部、ディテール部共、複数の項目(固定数)があります
EXCELの操作は初心者級なので解説もよろしくお願いします。
質問がよくなかったので指導してもらった操作が出来ませんでした。
詳細を書きますので再度の回答をお願いできないでしょうか?
ヘッダー部が3項目、ディテール部が8項目のそれぞれ固定項目です。
具体的には
A,B,C列がヘッダー部、D~K列がディテール部のデータです
(複数件が同じヘッダー)
1ヘッダー部(キーはA列)に同じヘッダーを持つ複数(最大10件)のディテールを横並びにしたいのです。
(横の長さはディテールの数によって違います)
元データー件数は約500件、生成後の件数は約120件です