A 回答 (7件)
- 最新から表示
- 回答順に表示
No.7
- 回答日時:
で、数式でやればいいのか VBAでやるのかどちらなのでしょう
数式でやるならば
=SUMPRODUCT((セル範囲アドレス="対象文字列")*1)
で何個あるのかがカウントできます
セル範囲とは A1:A20などといったものです
対象文字列は今回の場合 0001 です
VBAでやるならば
dim arData as Variant, n as integer, cnt as Integer
arData = Range("A1:A20").Value
cnt = 0
for n = 1 to 20
if arData( n,1 ) = "0001" then
cnt = cnt + 1
if cnt > 1 then
' 背景を赤に、文字色を黄色
Range("A1").Offset( n-1).interior.ColorIndex = 5
Range("A1").Offset( n-1).Font.ColorIndex = 6
end if
end if
next
といった具合でカウントできます
丁寧な回答ありがとうございます。
一応、数式を駆使してやろうかと考えております。
頂いた回答を基に、チャレンジしてみます。
本当に、ありがとうございました。
No.6
- 回答日時:
ANo4です 寝ぼけてましたね …
COUNTではなく SUMPRODUCTで代用なさってみてじゃいかがでしょう
=SUMPRODUCT( (A1:A8="0001")*1)
といった具合で ・・・
いろいろ回答ありがとうございます。
ですが、小生には応用が利かせられない為、具体的に実現させたいことを記しますので、その上でアドバイスを頂きたく。
下記のようなデータを想定し、重複したデータの入力時には"入力規則"にて入力できないようにし、また、データを読み込んだ場合は、重複箇所の色を"条件付書式"にて変えようかと考えております。そこで必要となるのは、条件式です。
範囲内のセルに同一の文字列が複数あった場合に検出できるような条件式が必要ですので、"COUNTIF"を使おうと考えました。ですが、質問の内容の通り、誤検出!?してしまう問題がありましたので、何とかならないかといった次第です...。
COUNTIF(A1:A5,A1) → 得られる結果:3 (期待している値:2)
A
1 0001 ← 重複箇所
2 01E0
3 1234
4 5678
5 0001 ← 重複箇所 (入力時にはNGに、データ読み込み時には色を赤に)
:
:
アドバイスの程、宜しくお願い致します。
No.5
- 回答日時:
A列に縦に16進数の文字列が並んでいるとして、
B列を =hex2dec(a1)として非表示にし、B列に対してcountifしてはいかがでしょう。原始的ですみませんが。
No.3
- 回答日時:
"0001"のように数値として解釈可能な文字列を演算に使うと数値に
変換されちゃうのはExcelの仕様です。日付や時間を扱う時はまぁ、
便利ですね。で、文字列"01E0"も指数表記の数値として解釈できる
ので、1かける10の0乗で1の扱いになります。
迅速な回答ありがとうございます。
理屈は解りましたが、ただ、セルの書式設定(分類)を"文字列"に指定していたのですが、それでも、文字列扱いとしては扱われないのでしょうか?
要は、COUNTIF で結果が 1 となって欲しいのですが、何か良い方法はないでしょうか...?因みに、検索対象となるセルの文字列は、""を入れるなど、加工はできません。純粋に、16進の数字が入力されている条件で考えております。要求は、入力された文字列が重複していないことがチェックできればクリアできます。
誠に勝手ながら、何か良い方法がありましたら、ご教示頂きたく。
宜しくお願い致します。
No.2
- 回答日時:
01E0 → 01 × 10の0乗 として扱われます。
デカい数を入力すると、6.23E+20(6.23×10の20乗) などと表示されるのがそれです。
で、01×10の0乗=1 なので、COUNTIFでこれも拾ってしまうわけです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) SUMIFとCOUNTIFの違いについて 4 2022/09/29 14:13
- Excel(エクセル) エクセル 条件に合う日付に入力された時間数の合計したい 4 2022/06/17 22:18
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- Excel(エクセル) Excelの空文字判定について 7 2023/01/06 13:25
- Excel(エクセル) Excel countif関数で取り消し線のセルをカウントしないようにしたい countif関数で文 2 2023/08/21 10:27
- Excel(エクセル) 重複したデータ(空白は除く)のVBA表記について 4 2022/08/15 07:28
- Excel(エクセル) Excelの関数詳しい方お願いします。 13 2023/01/18 21:11
- Excel(エクセル) マクロVBAのフォルダ階層別で検索の方法 4 2022/04/03 23:23
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- Android(アンドロイド) androidスマホでインタネット検索すると「Chromeで実行中です」というメッセージ表記について 1 2022/12/01 10:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでアルファベットか数...
-
EXCELで=より左の文字を一括で...
-
文字列からタブコードを取り除...
-
エクセルで文字列の最大値を抽...
-
ORCLEでの小数の表示方法の変更...
-
VBAでの Replace関数で、ワイル...
-
VBA2005 16進を2桁で表示したい。
-
【Excel VBA】複数ある特定の文...
-
アクセスで特定の数字以外(複...
-
エクセルで文字列をtxtファイル...
-
【Teratermマクロ】文字列の分...
-
OnTime 使用時のプロシージャへ...
-
エクセル 数値データを桁をそ...
-
aaa.bbb.ccc という、「ドット...
-
MS SQLServer のSQLで文字列の...
-
textboxユーザーコントロールの...
-
C#で年月を比較する
-
VBscriptで文字サイズを指定で...
-
A B C D E の五文字のすべてを...
-
Left関数とRight関数を合わせた...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルでアルファベットか数...
-
EXCELで=より左の文字を一括で...
-
文字列からタブコードを取り除...
-
VBAでの Replace関数で、ワイル...
-
エクセルで文字列をtxtファイル...
-
【Excel VBA】複数ある特定の文...
-
エクセル 数値データを桁をそ...
-
Excelで3E8を3.00E+8にしない方...
-
VBA2005 16進を2桁で表示したい。
-
エクセルで文字列の最大値を抽...
-
同一セル内に関数と文字列を同...
-
Left関数とRight関数を合わせた...
-
Excelで指数表現しないようにす...
-
MS SQLServer のSQLで文字列の...
-
VBの「As String * 128」とは?
-
エクセルでセル内の文字列の最...
-
ORCLEでの小数の表示方法の変更...
-
bashスクリプトでの文字列から...
-
LEFT関数で文字数を指定しない...
-
アクセスで特定の数字以外(複...
おすすめ情報
