Newsgroup: it.comp.appl.access
Titolo: DoCmd.DeleteObject acFunction,?

caffe' pagato a chi mi risolve il problema: cosa diavolo va messo al 
posto del "?"
?=nome funzione-->non trovato
?=modulo.nome funzione-->non trovato
+ altre "duo" o tre combinazioni
-- 
ac (x=y-1)

"Alessandro Cara"  ha scritto nel messaggio 
news:S20aq.68837$GZ3....@tornado.fastwebnet.it...

_________________Risposta:
non va messo l'uguale
?NomeFunzione()
MA 


L'avevo provata: non trovato
ed avevo provato anche "Function/Sub blabla" con e senza parentesi.
 
-- 
 
ac (x=y-1)


wrote:

Io ho il forte sospetto che ti sbagli...
Le function non credo siano quelle che intendi tu...!!!
Access come Oggetti del Client arriva fino alla collection Modules,
non hai una sottocollection Functions.
Se leggi bene la guida in merito a AllFunctions infatti potrebbero
sorgerti dubbi...
@Alex


Uhmmm.... sono andato 
qui:
http://msdn.microsoft.com/en-us/library/bb237899%28v=office.12%29.aspx
e fra gli acobjecttypes elenca tranquillamente acFunction (c'e' anche 
acModule)senza alcuna postilla. Hai, pero', probabilmente ragione anche 
perche' la Function di per se non e' sufficiente proprio a causa di 
possibilita' di omonimi (soprattutto se si usano metodi di classe), tra 
l'altro, facendo qualche ricerca sul web, non ho trovato nulla che 
almeno ne discuta.
Vabbe' dovro' fare qualche arzigogolo a botte di "DeleteLines".
-- 
ac (x=y-1)


La procedura "Test" in Access si cancella solo così:
============================================================
Public Sub DelF()
Dim CMD As Module
Set CMD = Modules("Module1")
CMD.DeleteLines CMD.ProcStartLine("Test", vbext_pk_Proc), _
                CMD.ProcCountLines("Test", vbext_pk_Proc)
End Sub
============================================================
 
Bruno
 
 


Richiede la refernce:
Microsoft Visual Basic for Application Extensibility 5.3
Bruno

 Bruno
Direi che è un'ottima soluzione, io tuttavia preferirei tentare con
LateBinding... quindi istanziare l'oggetto con un CreateObjet.
@Alex


Grazie Bruno.
Anche se
http://msdn.microsoft.com/en-us/library/aa207061%28v=office.10%29.aspx
 
mi lascia  perplesso che la trattino come Property, a me sembra piu' un 
metodo.
 
 
-- 
 
ac (x=y-1)

 LateBinding... quindi istanziare l'oggetto con un CreateObjet.
 
Tu e Alessandro state facendo considerazioni troppo raffinate per i 
miei muscoli cerebrali.
Comunque, quando avete pronte quattro righe di codice me le mandate e 
io le collaziono.
Nel senso che me le mangio a collazione.
 
Ciao a tutti.
Bruno
 
 

 ac (x=y-1)
 
Lassa fa e guarda questo...
 
http://www.cpearson.com/excel/vbe.aspx
 
 
Poi se riesci ad istanziare in LATEBINDING meglio, ma non ho trovato
altro che l'uso di ADDREFERENCE...
 
@Alex


Intendevo questo, ma a questo punto meglio quello di averlo fisso...:
 
Application..References.AddFromGuid GUID:= _
  "{0002E157-0000-0000-C000-000000000046}", Major:=5, Minor:=3
 
@Alex

 altro che l'uso di ADDREFERENCE...
 
Sono cose che non conosco.
 
Bruno
 
 

   "{0002E157-0000-0000-C000-000000000046}", Major:=5, Minor:=3
 
Sarebbe a dire???
 
Bruno
 
 

 Bruno
 
L'altro discorso serve solo per aggiungere da Codice i riferimenti
alla LIB in questione nel caso servisse usando il Codice GUID che è
quello con il quale
una LIB viene registrata nel REGISTRY...
 
@Alex

 una LIB viene registrata nel REGISTRY...
es "quasi" claro. ;-{)
-- 
ac (x=y-1)

 Sarï¿œ A.C. che lo farï¿œ... non io di certo...

Da me no (A2010 64bit ENG), richiede la Reference.
Io perï¿œ ho fatto cosï¿œ:
=====================================
Private Sub ListProc_Click()
Dim n As Long, i As Long, ProcColl As New Collection, S As String
n = Modules("Module1").CountOfLines
For i = 1 To n
    S = Modules("Module1").ProcOfLine(i, vbext_pk_Proc)
    If Len(S) Then
        On Error Resume Next
        ProcColl.Add S, S
        On Error GoTo 0
    End If
Next
For i = 1 To ProcColl.Count
    MsgBox ProcColl(i)
Next
End Sub
==============================================
Comunque,
Elimina Modulo:
Modules("Module3").DeleteLines 1, Modules("Module3").CountOfLines
Elimina Procedura:
Dim pStartLine As Long, pEndLine As Long
pStartLine = Modules("Module2").ProcStartLine("DDelF", vbext_pk_Proc)
pEndLine = Modules("Module2").ProcCountLines("DDelF", vbext_pk_Proc)
Modules("Module2").DeleteLines pStartLine, pEndLine
Bruno

 e fra gli acobjecttypes elenca tranquillamente acFunction ...
 
Hanno scelto un nome equivoco.
Non sono funzioni di VBA ma funzioni definite dall'utente
del SQL Server in un ADP.
 
-- 
Ciao
Karl
*********
Access FAQ:  
http://www.donkarl.com/it
 
 
 


Grazie Karl.
Molto equivoco. Vabbe' mezzo caffe' pagato (quando passo da Vienna o tu 
passi da Roma), l'altro mezzo va tra Mantova (cis"Padania") e non so 
dove si trova Bruno (in Trans"Padania" mi sembra) ;-{)
 
-- 
 
ac (x=y-1)


Bruno si trova il Full-Padania (Forlì).
 
Saluti a tutti.
Bruno
 
 

 Bruno
 
Bruno intanto ti ha dato del Trans(padano)... cosa che francamente
detto da un Romano... con in baffi pergiunta...
 
@Alex


Perche' lo pensavo dalle parti di Udine invece e' un quasi "volgare" 
mangiatore di anguille e non ha neanche lo scatto per definirsi 
"romagnolo". Comunque lui e' un vero "cispadano" ;-{) (adesso, 
"giustamente", mi riempie di fragorose maledizioni)
 
-- 
 
ac (x=y-1)