no, it won't
My code is stripping out all periods (.) and spaces, your code is trying to do something with a null string
you start doing things with sinputstring but if you don't give it a value it's basically just "". You have to tell the code what sinputstring is before you start working on it.
Code:
Private Sub letters_AfterUpdate()
Dim i As Integer
Dim sInputString As String
Dim sOutputString As String
sInputString = Replace([Letters], " ", "")
sInputString = Replace([sInputString], ".", "")
sOutputString = ""
For i = 1 To Len(sInputString)
sOutputString = sOutputString & UCase(Mid(sInputString, i, 1)) & "."
Next
Letters = sOutputString
End Sub