
Sub showMostFrequentNumber1()
Dim i As Integer
Dim count(1 To 10) As Integer
Dim maxcount As Integer
For i = 1 To 10
count(i) = Application.CountIf(Range("A1:A10"), Cells(i, 1).Value)
If i = 1 Then
maxcount = count(i)
ElseIf count(i) > maxcount Then
maxcount = count(i)
End If
Next i
For i = 1 To 10
If count(i) = maxcount Then
Range("A15").Value = Cells(i, 1).Value
End If
Next i
End Sub
--------------
Sub showMostFrequentNumber2()
Dim i As Integer
Dim count(1 To 10) As Integer
Dim maxcount As Integer
For i = 1 To 10
count(i) = Application.CountIf(Range("B1:B10"), Cells(i, 1).Value)
If i = 1 Then
maxcount = count(i)
ElseIf count(i) > maxcount Then
maxcount = count(i)
End If
Next i
For i = 1 To 10
If count(i) = maxcount Then
Range("B15").Value = Cells(i, 1).Value
End If
Next i
End Sub
コピペでA列B列の答えはオッケイですが
C列D列E列F列G列では答えが違うどうしてですか
マクロ名もセルの番号も修正したのに
No.1ベストアンサー
- 回答日時:
C列D列E列F列G列のコードが無いのでわからないけれど・・
プロシージャ7つ書くのかな?
AIがはいたコードぽいけれどforを使いOffsetで範囲を変えて出力すれば1つで済むかも知れません
書き方は違うけれどこんな感じかな
Sub Sample()
Dim Rng As Range
Dim k, keyWord
Dim tmpArray()
Dim i As Integer, n As Integer
For i = 0 To 6
n = 0
Set Rng = Range("A1:A10").Offset(, i)
keyWord = WorksheetFunction.Unique(Rng)
ReDim countArray(UBound(keyWord))
For Each k In keyWord
countArray(n) = Application.CountIf(Rng, k)
n = n + 1
Next k
Dim maxCount
maxCount = WorksheetFunction.Max(countArray)
n = 0
For Each k In keyWord
If maxCount = Application.CountIf(Rng, k) Then
ReDim Preserve tmpArray(n)
tmpArray(n) = k
n = n + 1
End If
Next
Range("A15").Offset(, i) = Join(tmpArray, "と")
' Range("A15").Offset(, i) = "要素:" & Join(tmpArray, ", ") & " 出現数:" & maxCount
Next i
End Sub
No.3
- 回答日時:
こんにちは
なさりたいことを書いてないのでわかりませんけれど・・
これ(↓)と同じことをA~G列で行いたいということと解釈しました。
https://oshiete.goo.ne.jp/qa/13441995.html
そちらに回答しておいた方法でも良ければ、記入するセル範囲をA15:G15にすればまとめて処理できます。
(最頻値が同数で複数ある場合には、ひとつだけ返されます)
Sub hoge()
Const f = "=INDEX(A:A,MATCH(MAX(@),@,0))&"""""
Const g = "INDEX(COUNTIF(A1:A10,A1:A10),)"
Range("A15:G15").FormulaLocal = Replace(f, "@", g)
Range("A15:G15").Value = Range("A15:G15").Value
End Sub
※ 同じ様な質問をするのなら、旧いものは放置ではなく、締め切っておく方が宜しいと思います。
No.2
- 回答日時:
>コピペでA列B列の答えはオッケイですが
>C列D列E列F列G列では答えが違うどうしてですか
結局、やりたいのは以下のような、ことですか。
①A1~A10で最も出現回数の多い数字をA15へ設定する。
②B1~B10で最も出現回数の多い数字をB15へ設定する。
③C1~C10で最も出現回数の多い数字をC15へ設定する。
④D1~D10で最も出現回数の多い数字をD15へ設定する。
⑤E1~E10で最も出現回数の多い数字をE15へ設定する。
⑥F1~F10で最も出現回数の多い数字をF15へ設定する。
⑦G1~G10で最も出現回数の多い数字をG15へ設定する。
上記をマクロ1回の呼び出しで実現する。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセル マクロ(A1:A10)までの中で一番多く出た数字をB10に表示 6 2023/04/25 17:01
- Visual Basic(VBA) このマクロの説明文を教えてほしいです。 1 2023/01/12 09:17
- Visual Basic(VBA) 前回ご教授いただいたコードに覚えたてのループ処理で品名りんごAから順に20回for nextでループ 7 2023/01/13 22:01
- Visual Basic(VBA) Sheet3から2つの条件でオートフィルターで抽出した個数をSheet2へ入力するマクロで、一つ目の 4 2023/01/12 23:40
- Visual Basic(VBA) Sheet2からオートフィルターで売上日を抽出した件数をカウントし、その件数をSheet1のセルB1 2 2023/01/12 12:24
- Visual Basic(VBA) VBAで、シート間の転記するコードをFOR~NEXTで教えてください。 9 2023/04/30 20:04
- Visual Basic(VBA) エクセルVBAで教えて頂きたいのですが? 2 2022/12/31 20:28
- Visual Basic(VBA) Sheet「状況」から、分類の年齢別カウント数をSheet「D表」へ転記する下記マクロを作っています 7 2022/12/14 17:57
- Excel(エクセル) VBAで組み合わせ算出やCOUNTIFSの処理を高速化したいです。 4 2022/04/07 02:38
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 6 2022/06/08 12:55
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで、あるセルの値に応じて...
-
IIF関数の使い方
-
B列の最終行までA列をオート...
-
Worksheets メソッドは失敗しま...
-
vba 2つの条件が一致したら...
-
【VBA】2つのシートの値を比較...
-
DataGridViewに空白がある場合...
-
データグリッドビューの一番最...
-
Cellsのかっこの中はどっちが行...
-
エラーコード1004
-
VBAでのリスト不一致抽出について
-
VBAを使って検索したセルをコピ...
-
【Excel VBA】特定列相違により...
-
rowsとcolsの意味
-
VBAで、離れた複数の列に対して...
-
VBA 何かしら文字が入っていたら
-
VBAのFind関数で結合セルを検索...
-
複数csvを横に追加していくマク...
-
実力がなくマクロがわかりません。
-
複数条件でのカウント
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelで、あるセルの値に応じて...
-
vba 2つの条件が一致したら...
-
Worksheets メソッドは失敗しま...
-
B列の最終行までA列をオート...
-
Cellsのかっこの中はどっちが行...
-
IIF関数の使い方
-
Changeイベントでの複数セルの...
-
【VBA】2つのシートの値を比較...
-
VBA 何かしら文字が入っていたら
-
URLのリンク切れをマクロを使っ...
-
VBAのFind関数で結合セルを検索...
-
DataGridViewに空白がある場合...
-
VBAを使って検索したセルをコピ...
-
文字列の結合を空白行まで実行
-
データグリッドビューの一番最...
-
VBAでのリスト不一致抽出について
-
エクセル 2つの表の並べ替え
-
rowsとcolsの意味
-
【Excel VBA】 B列に特定の文字...
-
VBA 列が空白なら別のマクロへ...
おすすめ情報