"Automatic" events must be called from a sheet module event macro, like Worksheet_Change. There can only be ONE of those, so you will have to teach it to do all the things you want.

For this:
Private Sub Worksheet_Change(ByVal Target as Range)
Dim cell As Range

If Not Intersect(Target, Range("M:M")) Is Nothing Then
    Application.EnableEvents = False
    For Each cell in Intersect(Target, Range("M:M")) 
        cell.value = UCase(cell.Value)
    Next cell 
    Application.EnableEvents = True