Excel VBA質問箱 IV

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

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


9031 / 76732 ←次へ | 前へ→

【73269】Re:IPアドレスを数字として判断するには?
発言  UO3  - 12/12/16(日) 6:53 -

引用なし
パスワード
   ▼コンソール さん:

おはようございます

本題の前に。
処理対象の領域について

9 行目から Cells(4, 9).End(xlDown).Row つまり I4より下の I列 最終データまでと
しておられますね。 もし、I列にデータが 6行目までしかなかった場合、9 To 6 となりますよ?

一方、処理を行うセルは Cells(ckk, 4) これは D列ですね?

もし、D列が対象なら
For ckk = 9 To Cells(9, 4).End(xlDown).Row ではないですか?

以下は Dレを対象にするとした場合のサンプルです。
(セル記述、Cells でもいいのですが、見た目、わかりやすいと思いますのでRangeにしてあります)

Sub Sample1()
  Dim s As Variant
  Dim ckk As Long
  Dim n As String
  
  For ckk = 9 To Range("D9").End(xlDown).Row
    s = Range("D" & ckk).Value
    n = Replace(s, ".", "")
    If Not IsNumeric(n) Or Len(s) <> Len(n) + 3 Then
      MsgBox ckk & "行の値にエラーがあります" & vbLf & s
    End If
  Next
  
End Sub

Sub Sample2()
  Dim s As Variant
  Dim ckk As Long
  Dim n As String
  
  For ckk = 9 To Range("D9").End(xlDown).Row
    s = Range("D" & ckk).Value
    n = Join(Split(s, "."), "")
    If Not IsNumeric(n) Or Len(s) <> Len(n) + 3 Then
      MsgBox ckk & "行の値にエラーがあります" & vbLf & s
    End If
  Next
  
End Sub

215 hits

【73268】IPアドレスを数字として判断するには? コンソール 12/12/16(日) 3:01 質問
【73269】Re:IPアドレスを数字として判断するには? UO3 12/12/16(日) 6:53 発言
【73274】Re:IPアドレスを数字として判断するには? コンソール 12/12/16(日) 20:14 お礼
【73270】Re:IPアドレスを数字として判断するには? UO3 12/12/16(日) 7:06 発言

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