Pergunta : função chamada que não executa - por que?

Quando o usuário pressiona F8, um macro está provocado que jogue o usuário nesta função de HotKeySaveRecord. Sua finalidade é chamar uma função de SaveRecord.    Desde o melhoramento para alcançar 2007, esta funcionalidade já não trabalha.   Quando eu piso com esta função, apenas atravessa para a direita o varTemp = a linha de frm.SaveRecord () sem nunca incorporar a função de SaveRecord. Não faz erro. a ajuda que do

Any você pode fornecer seria apreciada muito.  Obrigado!

class= > " desobstruído " do
> do " codeSnippet " do class= do
class= " lineNumbers " do
class= do
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
função >Public notpretty HotKeySaveRecord " do class= " do id= " codeSnippet806751 do
 0 de Err.Number então
      ExitRoutine empreendedores
   Terminar se
   No erro ErrorHandler empreendedores
   
   'Ver se nós podemos executar uma função de SaveRecord () no formulário atual.
   No erro recomeçar em seguida
   varTemp = frm.SaveRecord ()
   gobjLastError.Save erram, strProcedureName
   No erro ErrorHandler empreendedores
   'Inspecionar agora o gobjLastError para ver mesmo se nós encontramos um SaveRecord formulário-específico ().
   Selecionar o caso gobjLastError.Number
      Não encaixotar 0 'nenhuns erros.  O formulário atual teve uma função de SaveRecord ().
         'Não fazer nada
      O formulário atual do caso 2465 'não teve uma função de SaveRecord ().
         'Executar a função global de SaveRecord ().
         varTemp = SaveRecord ()
      O caso mais 'algum outro erro aconteceu.
         gobjLastError.Raise gobjLastError.Number & “: ” & gobjLastError.Description
   Extremidade seleta
   
ExitRoutine:
   Retirar a função
ErrorHandler:
   gobjLastError.Save erram, strProcedureName
   Selecionar o caso gobjLastError.Number
      Encaixotar mais
         gobjLastError.Show
         Recomeçar ExitRoutine
   Terminar seleto
Terminar a função
class= do

Resposta : função chamada que não executa - por que?

Não sure porque todo esse código é necessário.  A maneira a mais simples de conservar um registro é a seguinte.

Em um formulário com uma tecla de salvaguarda:

Me.Dirty = falso

SE… você precisa um “global” excepto (?) … então em um módulo do vba:

Forms.YourFormName.Dirty = falso

Ou

Screen.ActiveForm.Dirty = falso

MX
Outras soluções  
 
programming4us programming4us