テキスト挿入

解決


コンドウ  2004-04-15 21:30:58  No: 112861  IP: [192.*.*.*]

EXCELデータにマクロを使い特定のセルのデータにテキストを挿入したいのですがVBAではどの様に記述したらよいでしょうか
例  A1セルの"9999"データの頭にに"Y99="を挿入してY99=9999とするような場合。(開くデータによりA1セルの値が異なります)
超初心者な質問で申し訳ないのですが、ご教示頂けますでしょうか?

編集 削除
いな  2004-04-15 22:54:44  No: 112862  IP: [192.*.*.*]

ActiveSheet.Range("A1").value = "Y99=" & ActiveSheet.Range("A1").value

で、いいのかな?

編集 削除
コンドウ  2004-04-16 10:13:32  No: 112863  IP: [192.*.*.*]

いなさん  ありがとうございました!

あまりにも初心者な質問で恐縮だったのですが、分からなくて困っていました。どうもありがとうございました。
そこで、もう一つ質問なのですが既にY99=9999となっているデータのY99=の部分のみY89=におきかえてY89=9999とする場合にはどうしたら良いのでしょうか?

編集 削除
しゅう  2004-04-17 00:12:30  No: 112864  IP: [192.*.*.*]

Replace 関数を調べてみて下さい。

編集 削除
いな  2004-04-17 16:50:11  No: 112865  IP: [192.*.*.*]

ReplaceはExcel97では使用できないので、
まずはExcelのバージョンを教えてください。

--ま、自前で
Public Function fReplaceChar(ByVal vExpr As String, ByVal vFind As String, ByVal vRepl As String) As String

    Dim sResult As String
    Dim iStart As Long
    Dim iPos As Long
    Dim iLen As Long

    iLen = Len(vFind)
    If iLen = 0 Then
        fReplaceChar = vExpr
        Exit Function
    End If

    iStart = 1

    Do
        iPos = InStr(iStart, vExpr, vFind)
        If iPos = 0 Then
            fReplaceChar = sResult & Mid$(vExpr, iStart)
            Exit Do
        End If

        sResult = sResult & Mid$(vExpr, iStart, iPos - iStart) & vRepl
        iStart = iPos + iLen
    Loop

End Function
こんな感じの関数を用意してみるのも良いでしょう。

編集 削除
コンドウ  2004-04-22 18:14:23  No: 112866  IP: [192.*.*.*]

いなさんへ

私にはむずかしーです。
とりあえず今回はテキスト挿入は解決しましたので、もう少し勉強してお問い合わせしようと思います。

どうもありがとうございました。

編集 削除