У меня есть 2 кода, но только один работает в VBA.У меня есть
Private Sub FINALIZEBTN_Click()
Dim response As VbMsgBoxResult
response = MsgBox("HAVE YOU COMPLETED THE FORM IN FULL?", vbYesNo)
If response = vbYes Then
MsgBox "DO NOT FORGET TO SAVE AND SUBMIT THIS FORM"
Else
If response = vbNo Then
MsgBox "PLEASE REVIEW AND COMPLETE THE FORM IN FULL"
Exit Sub
End If
End If
Dim cell As Range
For Each cell In Range("$A$1:" & Range("$A$1").SpecialCells(xlLastCell).Address)
If Len(cell) > 0 Then cell = UCase(cell)
Next cell
Application.ScreenUpdating = True
End Sub
Так что при нажатии вы получаете приглашение да / нет, тогда оно вызывает прописные буквы на всем листе.
Единственными символами, которые мы разрешаем, являются '&' и '-' Я бы хотел, чтобы при вводе специального символа появлялось другое окно, сообщающее им что-то вроде «эй, ты не можешь этого сделать» или когданайден специальный символ, чтобы удалить его и просто удалить его ничем.Если бы мы могли заставить его удалять и заменять латинские буквы острыми (как для испанского языка), это было бы также здорово.В настоящее время я не вижу никаких изменений при сохранении или запуске макросов с кодом в модуле 1.
У меня есть следующий код в модуле 1
Function removeSpecial(sInput As String) As String
Dim sSpecialChars As String
Dim i As Long
sSpecialChars = "\/:*?""<>|$,.`"
For i = 1 To Len(sSpecialChars)
sInput = Replace$(sInput, Mid$(sSpecialChars, i, 1), "")
Next
removeSpecial = sInput
End Function