|
▼わんころもち さん:
>力技ですが、1000行で30秒ほどで終わりましたので、自分的にはよしとします。
解決済みとなってますので、参考という程度で見てください。
> GoSub 文字列切り出し
> GoSub 番号書き出し
GoSubはあまり、使いません。
Private Sub 文字切り出し(ByVal Code As Long)
など、別プロシジャにするのが一般的です。
好みの問題もありますので、参考ということで。
文字の切り出しの部分ですが、
自分の書いたロジックには無駄がありますね・・・
'例)3文字を切り出す
Sub test()
Dim str As String
Dim i As Long
Dim buf As Variant
str = "あいうえお"
For i = 1 To Len(str) 'ここに補正値 -2 を追加する
buf = Mid(str, i, 3)
If Len(buf) = 3 Then
MsgBox buf
Else
MsgBox "無駄:" & buf
End If
Next
End Sub
>番号書き出し:
>ThisWorkbook.Sheets("Sheet2").Activate
> For Row2 = 1 To 1000
> If Cells(Row2, 1) = "" Then
> Cells(Row2, 1) = Bangou
> Bangou = ""
ここにExit For があると、
少し無駄ループが減るのでは?
> End If
> Next
>Return
最終行に値と追加するロジックは、
もっと効率的なサンプルがあると思います。
探してみてください。
|
|