Среда, 14 Сентября 2016 г. 22:17
+ в цитатник
Пишу функцию отлова всех сообщений в коде форм.
Но она ловит не более 5 штук.
Что в ней не верно написано?
Public Function MESSAGI_GDE()
' ËÎÂÈÌ ÌÅÑÑÀÃÈ
Dim VBProj As VBIDE.VBProject
Dim VBComp As VBIDE.VBComponent
Dim CodeMod As VBIDE.CodeModule
Dim s As String ' Ñòðîêè áóêâû
Dim i As Long ' Ñòðîêè øòóêè
Dim N As Integer ' ÍÀ×ÀËÎ ÑÒÐÎÊÈ
Dim K As Integer ' ÍÀ×ÀËÎ ÑÒÐÎÊÈ
Dim m As Module
Dim mi As Byte
Set VBProj = Access.VBE.ActiveVBProject
For mi = 0 To Application.Modules.Count - 1
Set m = Application.Modules(mi)
Set VBComp = VBProj.VBComponents(m)
Set CodeMod = VBComp.CodeModule
For i = 2 To CodeMod.CountOfLines
If InStr(1, CodeMod.Lines(i, 1), "MsgBox", vbTextCompare) <> 0 And InStr(1, CodeMod.Lines(i, 1), "InStr", vbTextCompare) = 0 Then
N = InStr(1, CodeMod.Lines(i, 1), "MsgBox", vbTextCompare) + 8
K = InStr(N, CodeMod.Lines(i, 1), """", vbTextCompare) - N
s = ""
s = Mid(CodeMod.Lines(i, 1), N, K)
DoCmd.SetWarnings False
DoCmd.RunSQL "INSERT INTO LANGUAGE_TBL (RUS) VALUES ('" & s & "')"
DoCmd.SetWarnings True
End If
Next i
Next mi
Set VBProj = Nothing
Set m = Nothing
Set VBComp = Nothing
Set CodeMod = Nothing
End Function
--------------------------------------------------------------------------
СПС
http://www.sql.ru/forum/1230816/otlov-vseh-msgbox-v-kode
-
Запись понравилась
-
0
Процитировали
-
0
Сохранили
-