MartyConnelly
martyconnelly at shaw.ca
Tue Mar 18 03:32:40 CST 2003
John Bartow wrote: >Hi Bryan, >A97, I just wanted to delete one procedure. > >I was just checking to see if anyone had code that I could adapt and also if >there were any methods that worked/didn't work well. (I have never >manipulated module code with code before so I wanted to check first.) > >John > >-----Original Message----- >From: accessd-admin at databaseadvisors.com >[mailto:accessd-admin at databaseadvisors.com]On Behalf Of Bryan Carbonnell >Sent: Monday, March 17, 2003 9:18 PM >To: accessd at databaseadvisors.com >Subject: Re: [AccessD] Deleting an Entire Module Procedure via code > > >On 17 Mar 2003 at 15:46, John Bartow wrote: > > > >>Anyone have advice on deleting an entire module procedure via code? >> >> > >John, > >What version of Access? > >Do you want to delete a complete module or just a procedure? > >-- >Bryan Carbonnell - carbonnb at sympatico.ca >I'm not a complete idiot some parts are missing. > > > > > I suppose you could also use the brute force method below and parse the output text file cutting the procedure and reload it. To bad you can't use Memory Mapped Files as a virtual file. Public Sub DocDatabase() '==================================================================== ' Name: DocDatabase ' Purpose: Documents the database to a series of text files ' ' ' Comment: Uses the undocumented [Application.SaveAsText] syntax ' To reload use the syntax [Application.LoadFromText] '==================================================================== On Error GoTo Err_DocDatabase Dim dbs As Database Dim cnt As Container Dim doc As Document Dim i As Integer Set dbs = CurrentDb() ' use CurrentDb() to refresh Collections Set cnt = dbs.Containers("Forms") For Each doc In cnt.Documents Application.SaveAsText acForm, doc.Name, "D:\Document\" & doc.Name & ".txt" Next doc Set cnt = dbs.Containers("Reports") For Each doc In cnt.Documents Application.SaveAsText acReport, doc.Name, "D:\Document\" & doc.Name & ".txt" Next doc Set cnt = dbs.Containers("Scripts") For Each doc In cnt.Documents Application.SaveAsText acMacro, doc.Name, "D:\Document\" & doc.Name & ".txt" Next doc Set cnt = dbs.Containers("Modules") For Each doc In cnt.Documents Application.SaveAsText acModule, doc.Name, "D:\Document\" & doc.Name & ".txt" Next doc For i = 0 To dbs.QueryDefs.Count - 1 Application.SaveAsText acQuery, dbs.QueryDefs (i).Name, "D:\Document\" & dbs.QueryDefs(i).Name & ".txt" Next i Set doc = Nothing Set cnt = Nothing Set dbs = Nothing Exit_DocDatabase: Exit Sub Err_DocDatabase: Select Case Err Case Else MsgBox Err.Description Resume Exit_DocDatabase End Select End Sub 'in clean database load the new form Public Function LoadForm(frm As String) On Error Resume Next Application.LoadFromText acForm, frm, "D:\YourPath\" & frm & ".txt" End Function