画像のような表(A表からB表)にしたいのですがどうしてもできません。
VBAでも良いので教えてください。
A表
No | 項目1|項目2|項目3|・・・・・
1101 | 150 | | |
1101 | |200 |140 |
1111 | |100 |200 |
1121 | 200 |110 | |
↓
B表
No | 項目1|項目2|項目3|・・・・・
1101 | 150 |200 |140 |
1111 | |100 |200 |
1121 | 200 |110 | |
統合機能使ったんですが「何も統合されませんでした」と出ました。
No.4
- 回答日時:
No.2です。
例えば『1101』には『項目1の2行目』で 150 がありますが同じ『項目1』且つ『他の行』で値が存在するのかなって思ってただけです。
たまにキーワード毎に各集計をしたいって質問もあるものですから。
ありがとうございます。
『1101』には『項目1の2行目』で 150 がありますが同じ『項目1』且つ『他の行』で値が存在はしません。
No.1
- 回答日時:
こんにちは!
VBAになりますが、一例です。
元データはSheet1にあり、1行目は項目行でデータは2行目以降にあるとし、Sheet2に表示するとします。
標準モジュールです。
Sub Sample1()
Dim myDic As Object
Dim i As Long, j As Long
Dim lastRow As Long, lastCol As Long
Dim myStr As String, buf As String
Dim wS As Worksheet
Dim myKey, myItem, myAry
Set myDic = CreateObject("Scripting.Dictionary")
Set wS = Worksheets("Sheet2")
'//▼Sheet2のデータを一旦消去//
lastRow = wS.Cells(Rows.Count, "A").End(xlUp).Row
lastCol = wS.UsedRange.Columns.Count
If lastRow > 1 Then
Range(wS.Cells(2, "A"), wS.Cells(lastRow, lastCol)).ClearContents
End If
With Worksheets("Sheet1")
For i = 2 To .Cells(Rows.Count, "A").End(xlUp).Row
myStr = .Cells(i, "A")
For j = 2 To .Cells(i, Columns.Count).End(xlToLeft).Column
If .Cells(i, j) <> "" Then
buf = buf & .Cells(i, j) & "_"
End If
Next j
buf = Left(buf, Len(buf) - 1)
If Not myDic.exists(myStr) Then
myDic.Add myStr, buf
Else
myDic(myStr) = myDic(myStr) & "_" & buf
End If
buf = ""
Next i
End With
myKey = myDic.keys
myItem = myDic.items
For i = 0 To UBound(myKey)
wS.Cells(i + 2, "A") = myKey(i)
myAry = Split(myItem(i), "_")
For j = 0 To UBound(myAry)
wS.Cells(i + 2, j + 2) = myAry(j)
Next j
Next i
Set myDic = Nothing
wS.Activate
MsgBox "完了"
End Sub
こんな感じではどうでしょうか?
※ 細かいエラー処理はしていません。m(_ _)m
ありがとうございます
参考にさせていただきます。
まだ初心者でして・・・
良かったら上記のVBは何がどのようなことをしているのか教えていただけたらと思うんですが・・・・・だめですか?
甘えすぎかもしれないんですが・・わからな過ぎて。
申し訳ございませんがよろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAで、1つのエクセルで、2つのシートからもう1つのシートに条件のある転記コードを教えてください。 1 2023/03/16 18:07
- Excel(エクセル) VBAで、シート間の転記するコードを教えてください。 4 2023/03/26 10:43
- iPhone(アイフォーン) 同じ写真と動画をiOSが検出する便利な機能 写真のアルバムタブにて、画面を一番下までスクロールすると 3 2023/01/23 15:41
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Excel(エクセル) ExcelVBAでリストの項目に必要数と同じ手配数を分配していくマクロを作りたいです。 1 2022/07/29 18:36
- Visual Basic(VBA) Excel VBAのリストボックスの値を他のフォームに反映させる方法を教えてください。 2 2023/07/14 14:06
- Excel(エクセル) Formulaプロパティーを使ってセルに数式を組んだのですが簡潔にしたい。 3 2022/08/21 20:51
- Visual Basic(VBA) 【VBA】データを入力後に,同一シート内に履歴として転記するVBAコードを教えていただきたいです。 3 2022/11/16 01:37
- Access(アクセス) access フォーム 大分類、小分類 1 2022/08/11 18:03
- 統計学 統計に関する質問です 3 2022/05/19 20:21
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
エクセルVBAで5行目からオート...
-
必須入力項目と入力必須項目
-
Access テキスト型に対する指定...
-
エクセルグラフの凡例スペース
-
APN設定について教えていただけ...
-
Access又はExcelで256項目を超...
-
Accessレポートで特定条件で改...
-
VBAで複数の数式セルを最終行ま...
-
条件に一致した列の非表示の仕...
-
SQLのSELECT文で*を使わない理由
-
エクセルマクロにて最終行まで...
-
Windows10で、Windowsのログの...
-
空白をそのままインポートする...
-
セルの右クリックで出る項目を...
-
SELECT文でLEFT関数を使うと未...
-
Excel2007 メニューバーのプル...
-
ORACLEでLONG項目からCHAR項目...
-
Accessで数値型にNULLをInsert...
-
SQL*Loaderでのゼロ埋め
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
エクセルVBAで5行目からオート...
-
Oracle 2つのDate型の値の差を...
-
Access テキスト型に対する指定...
-
Excelで空白以外の値がある列の...
-
エクセルグラフの凡例スペース
-
ORACLEでLONG項目からCHAR項目...
-
VBAで複数の数式セルを最終行ま...
-
SUBSTRING 関数に渡した長さの...
-
Accessで数値型にNULLをInsert...
-
DBのタイプの指定とサイズにつ...
-
セルの右クリックで出る項目を...
-
BIOSでAHCIに設定したいが、項...
-
空白をそのままインポートする...
-
APN設定について教えていただけ...
-
複数のレコードを1つのレコード...
-
Accessレポートで特定条件で改...
-
必須入力項目と入力必須項目
-
Joy To Keyのマウスやキーボー...
-
2行目を表示できますか?
おすすめ情報