人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

質問です
エクセルで以前似たような質問でしたが
B列が6桁のアルファベットと数字の組み合わせの記号で
D列F列に数字の1があります。
それぞれ右側のC列E列G列にB列の同じ記号のその数の合計を表示
するマクロをお願いします。合計もありです。

A列 B列 C列 D列 E列 F列 G列
2001/4/1 3AVZ1L 1 1
2001/4/1 3AVZ1L 1 1
2001/4/1 3AVZ1L 1 1
2001/4/1 3AV2ZL 1 1
2001/4/1 3AV2ZL 1 1
2001/4/1 3AV2ZL 1 1
2001/4/2 3AV2ZL 1 1

結果は下記
2001/4/1 3AVZ1L 1 1
2001/4/1 3AVZ1L 1 1
2001/4/1 3AVZ1L 3 1 3 1 3
2001/4/1 3AV2ZL 1 1
2001/4/1 3AV2ZL 1 1
2001/4/1 3AV2ZL 1 1
2001/4/2 3AV2ZL 4 1 4 1 4

●質問者: inosisi
●カテゴリ:コンピュータ インターネット
✍キーワード:アルファベット エクセル マクロ 数字
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● SALINGER
●15ポイント

データが1行目からならば。

Sub Macro()
 Dim i As Long
 Dim lastRow As Long
 Dim count As Long
 
 lastRow = Cells(Rows.count, "B").End(xlUp).Row
 
 count = 1
 For i = 1 To lastRow
 If Cells(i, "B").Value = Cells(i + 1, "B").Value Then
 count = count + 1
 Else
 Cells(i, "C").Value = count
 Cells(i, "E").Value = count
 Cells(i, "G").Value = count
 count = 1
 End If
 Next i
End Sub
◎質問者からの返答

質問の仕方が悪かったみたいです。

A列 B列 C列 D列 E列F列 G列

2001/4/1 3AVZ1L 1 1

2001/4/1 3AVZ1L 1

2001/4/1 3AVZ1L 1 1

2001/4/1 1AV2ZL 1

2001/4/1 1AV2ZL 1 1

2001/4/1 1AV2ZL

2001/4/2 1AV2ZL 1 1

結果は下記

2001/4/1 3AVZ1L 1 1

2001/4/1 3AVZ1L 1

2001/4/1 3AVZ1L 3 1 2 1 3

2001/4/1 3AV2ZL 1

2001/4/1 3AV2ZL 1 1

2001/4/1 3AV2ZL

2001/4/2 3AV2ZL 4 1 2 1 3


2 ● SALINGER
●55ポイント ベストアンサー
Sub Macro()
 Dim i As Long
 Dim lastRow As Long
 Dim count As Long
 Dim countD As Long
 Dim countF As Long
 
 lastRow = Cells(Rows.count, "B").End(xlUp).Row
 
 count = 0
 countD = 0
 countF = 0
 For i = 1 To lastRow
 count = count + 1
 If Cells(i, "D").Value = 1 Then
 countD = countD + 1
 End If
 If Cells(i, "F").Value = 1 Then
 countF = countF + 1
 End If
 If Cells(i, "B").Value <> Cells(i + 1, "B").Value Then
 Cells(i, "C").Value = count
 Cells(i, "E").Value = countD
 Cells(i, "G").Value = countF
 count = 0
 countD = 0
 countF = 0
 End If
 Next i
End Sub
◎質問者からの返答

ありがとうございました。

完璧です。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ