[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『セル内のカンマで区切った数値の取出し』(やっぱり初歩)
いつもお手数をお掛けします。 セルの中に文字列で [ 1,15,200,10,525,3000 ] と入力されています。 この内容を配列へ格納したいのです。何か良い方法は無いかと思い次の様な ものを書き始めた所でした。いろいろ問題が予想され頓挫し掛けています。 未だ配列を備えていませんが、何か良い方法は無いでしょうか?
Dim p&, p1&, p2&, Num&, At2nd As Boolean
With Range("A1") For i = 1 To Len(.Value) p = InStr(i, .Value, ",") If p <> 0 Then p1 = p + 1 '文字列の先頭位置 p2 = i - 1 ' 〃 の最後位置 If Not At2nd Then Num = Left(.Value, p2) At2nd = True ElseIf i = Len(.Value) Then Num = Mid(.Value, p1, p2) End If End If Next End With
こんな拙いもので済みません・・・
< 使用 Excel:Excel2010、使用 OS:Windows8 >
Splitを使えばいいのではないでしょうか。簡単に配列に格納できます。 (カリーニン) 2014/10/20(月) 08:57
サンプルコードです。
Sub test() Dim sp As Variant Dim mystr As String mystr = Range("A1").Value sp = Split(mystr, ",") MsgBox mystr & vbCrLf & Join(sp, "/") & vbCrLf & Replace(mystr, ",", "_") Range("B1").Resize(UBound(sp) + 1).Value = WorksheetFunction.Transpose(sp) Erase sp End Sub
(カリーニン) 2014/10/20(月) 09:10
どうも有り難うございました。 コードを書いている途中で、何か関数があるのではと思い調べようとしましたが・・・ ”やっぱり初歩”でした。簡単に出来ました。 (やっぱり初歩) 2014/10/20(月) 09:19
Dim x x = Split(Trim$(Mid$([a1], 2, Len([a1]) - 2)), ",") とか? (seiya) 2014/10/20(月) 09:24
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.