トップページ > プログラム > 2014年07月01日 > /AUZGirl

書き込み順位&時間帯一覧

27 位/233 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000100000000000001103



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
Excel VBA 質問スレ Part34

書き込みレス一覧

Excel VBA 質問スレ Part34
15 :デフォルトの名無しさん[sage]:2014/07/01(火) 07:39:47.71 ID:/AUZGirl
>>14

元ネタがまともだと思ってる時点でお察しですな。
あれは、それだけを読めば特に間違ってはいないんだけど、
話の流れからいったらバカ丸出しの発言だったんよ。
(論点がずれてた)
Excel VBA 質問スレ Part34
22 :デフォルトの名無しさん[sage]:2014/07/01(火) 21:56:11.46 ID:/AUZGirl
>>18
そのブックのシート1(シートタブが一番左のシート)で
A列を上から順番に調べて、「セルの値が数値」で、かつ「長さが8桁」のときに
そのセルの値を1000で割った余り(つまり下3桁)をそのセルに書き込む
条件に合わなければその行をスルー
次の行へ、
セルが空白だったら終了
という動作をするマクロ
ただし、全ての数字が整数である前提で組んでますので、
小数が混じってると上手く動作しません

Sub test()
Dim rw As Long
With ThisWorkbook.Sheets(1)
 rw = 1
 Do
  If .Cells(rw, 1) = "" Then Exit Do
  If IsNumeric(.Cells(rw, 1)) Then
   If Len(.Cells(rw, 1)) = 8 Then
    .Cells(rw, 1) = .Cells(rw, 1) Mod 1000
   End If
  End If
  rw = rw + 1
 Loop
End With
End Sub
Excel VBA 質問スレ Part34
26 :デフォルトの名無しさん[sage]:2014/07/01(火) 22:53:28.97 ID:/AUZGirl
>>25
それでもいいですけど、
For Nextループから抜け出すなら

If Cells(i, 1) = "" Then Exit For

が一般的だと思いますよ


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。