| 
    
     |  | ▼ハーレーダビットソン さん: こんばんは。
 
 >こんにちは。
 >マクロを組んでいて題名の件で困っています。
 >まず、基準と比較対照のシートがあります。
 >基準とするシートの値(固定値)に対して、他社に配布し入力してもらう
 >比較対照用のシートをぶつけて、採点をしています。
 >
 >A〜C列まではリスト内の文字を選択するのですが
 >D列のみ□□±(プラスマイナス)○○という値を入力してもらいます。
 >
 >(例)
 >8.16±0.08(8.08〜8.24)
 >
 >望むことは
 >・表示は8.16±0.08のまま
 >・内部的には8.08〜8.24と認識してくれる
 
 新規ブックの標準モジュールに
 '==============================================================
 Sub main()
 Dim ans As Variant
 Range("a1").Value = "8.16±0.08"
 ans = get_scope(Range("a1"))
 If TypeName(ans) <> "Boolean" Then
 MsgBox ans(0) & "〜" & ans(1)
 End If
 End Sub
 '===============================================================
 Function get_scope(rng As Range) As Variant
 Dim myarray As Variant
 myarray = Split(rng.Value, "±")
 get_scope = False
 If UBound(myarray) = 1 Then
 If IsNumeric(myarray(0)) And IsNumeric(myarray(1)) Then
 get_scope = Array(CDec(myarray(0)) - CDec(myarray(1)), _
 CDec(myarray(0)) + CDec(myarray(1)))
 End If
 End If
 End Function
 
 アクティブシートのセルA1の「8.16±0.08」を
 解析した結果です。
 こういうことですか?
 
 |  |