| 
    
     |  | つん さん: >えーと、僭越ながら、突っ込ませていただきます!
 ありがとうございます。
 とんだ失敗でした。
 
 まずは、
 '標準モジュールに
 Sub gomennne()
 Application.EnableEvents = True
 End Sub
 
 を一回走らせたほうがいいかな
 
 そして、これに書き換えてください。
 Option Explicit
 
 Private Sub Worksheet_Change(ByVal Target As Range)
 Dim r As Long
 Dim i As Long
 If Target.Column >= 3 Then Exit Sub
 Application.EnableEvents = False
 
 With Me.Range("C" & Target.Row)    '入力したセルの行のC列で
 If Not IsNumeric(.Offset(, -2).Value) Then 'A列の値が数字じゃなければ
 .Replace What:="◆", Replacement:=""  '◆を無しに置換します。
 GoTo owari               '飛べ!
 End If
 If Not IsNumeric(.Offset(, -1).Value) Then
 .Replace What:="●", Replacement:=""
 GoTo owari
 End If
 .Value = ""             'いったん消します。
 For i = 1 To .Offset(, -2).Value  'A列の数字分繰り返します
 .Value = "◆" & .Value
 Next
 For i = 1 To .Offset(, -1).Value
 .Value = .Value & "●"
 Next
 For i = 1 To Len(.Value)      'C列の文字数繰り返します。
 If Mid(.Value, i, 1) = "◆" Then
 .Characters(i, 1).Font.ColorIndex = 3
 ElseIf Mid(.Value, i, 1) = "●" Then
 .Characters(i, 1).Font.ColorIndex = 4
 End If
 Next i
 
 End With
 owari :
 Application.EnableEvents = True
 End Sub
 
 *くやしい〜  go to しか思いつかなかったぁ〜
 もしかして、つんさんがもっと良いコードを見せてくれるかも・・・(へへ)
 修正しました 本当にすみませんでした。
 
 |  |