Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2283 / 13646 ツリー ←次へ | 前へ→

【68980】条件判断処理について G'z One 11/5/5(木) 14:56 質問[未読]
【68981】Re:条件判断処理について リンク 11/5/5(木) 15:16 発言[未読]
【68991】Re:条件判断処理について G'z One 11/5/5(木) 21:10 質問[未読]
【68992】Re:条件判断処理について UO3 11/5/5(木) 21:22 発言[未読]
【68994】Re:条件判断処理について G'z One 11/5/5(木) 22:06 お礼[未読]

【68980】条件判断処理について
質問  G'z One  - 11/5/5(木) 14:56 -

引用なし
パスワード
   皆様、こんにちは。

データの重複チェックを行うマクロを以前作成したのですが、
1点改造を加えたく、どなたか分かる方がいれば、ご教授下さい。

下記のマクロでは、データの重複が必ずある事を前提の上、
メッセージボックスに「重複データは、●件あります」と
表示しています。

重複が0件の場合も、「重複データは、0件あります」と
表示されるので、重複が0件の場合は、
「重複データはありません」と表示されるようにしたいです。

申し訳ありませんが、宜しくお願いいたします。


========================================================================

Sub ★データの重複チェック★()
 
'【1】D列+E列を結合し、J列に出力。J列の重複チェック後に,結果をK列に出力。
  Dim n As Long
  With Range("K2:K" & Cells(Rows.Count, "E").End(xlUp).Row)
    .Offset(, -1).FormulaR1C1 = "=RC[-6]&RC[-5]"
    .Formula = "=IF(COUNTIF(J:J,J2)>1,""重複"","""")"
    .Value = .Value
    n = WorksheetFunction.CountA(.Cells)
  
  End With


'【2】"セルA1"に移動
  Range("A1").Select


'【3】重複データの件数をメッセージボックスに出力。
  MsgBox "重複データは " & n & "件あります", , "チェック終了"


End Sub

========================================================================

【68981】Re:条件判断処理について
発言  リンク  - 11/5/5(木) 15:16 -

引用なし
パスワード
   > 重複が0件の場合は、
>「重複データはありません」と表示されるようにしたいです
難しく考え過ぎです。
  If n = 0 Then
    '
  Else
    '
  End If
では?

【68991】Re:条件判断処理について
質問  G'z One  - 11/5/5(木) 21:10 -

引用なし
パスワード
   ▼リンク さん:

こんばんわ。返信が遅くなり、申し訳ありません。

下記の回答を頂き、有難うございます。

まだまだマクロに関してのスキルが低レベルで、IF構文の使い方が
分かりません。お手数ですが、教えて頂けないでしょうか?


>> 重複が0件の場合は、
>>「重複データはありません」と表示されるようにしたいです
>難しく考え過ぎです。
>  If n = 0 Then
>    '
>  Else
>    '
>  End If
>では?

【68992】Re:条件判断処理について
発言  UO3  - 11/5/5(木) 21:22 -

引用なし
パスワード
   ▼G'z One さん:

一例です。
変数 s を Dim s As String と宣言しておいて

  If n = 0 Then
    s = "ありません"
  Else
    s = n & "件あります"
  End If
  MsgBox "重複データは " & s, , "チェック終了"

【68994】Re:条件判断処理について
お礼  G'z One  - 11/5/5(木) 22:06 -

引用なし
パスワード
   ▼UO3 さん:

こんばんわ。
早速の回答、どうも有難うございます!

UO3 さんから教えて頂いたコードを下記の様に
組み込んで試したところ、私の期待した通りに
動作してくれました。

助かりました。

また、分からない事があったら投稿することが
あるかもしれませんが、今後ともどうぞ宜しく
お願いいたします。
今回は、お力をお貸し下さりまして、本当に
有難うございました。


========================================================================

Sub ★データの重複チェック★()
 
'【1】D列+E列を結合し、J列に出力。J列の重複チェック後に,結果をK列に出力。
  Dim s As String
  With Range("K2:K" & Cells(Rows.Count, "E").End(xlUp).Row)
    .Offset(, -1).FormulaR1C1 = "=RC[-6]&RC[-5]"
    .Formula = "=IF(COUNTIF(J:J,J2)>1,""重複"","""")"
    .Value = .Value
    n = WorksheetFunction.CountA(.Cells)
  
  End With


'【2】"セルA1"に移動
  Range("A1").Select


'【3】重複データの件数をメッセージボックスに出力。
 If n = 0 Then
    s = "ありません"
  Else
    s = n & "件あります"
  End If
  MsgBox "重複データは " & s, , "チェック終了"


End Sub

========================================================================

2283 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free