Newsgroup: it.comp.appl.access
Titolo: Rimuoviamo le linee commento?

Cercavo un metodo per rimuovere in automatica le linee commento da tutti i
moduli di un .mdb.
Sarebbe utile che sta cosa la facesse in fase di creazione .MDE Access ....
ma nisba.
Ora, le linee commento non occupano risorse apprezzabili di memoria e non
causano rallentamenti nell'esecuzione del codice però sono una seccatura in
generale (soprattutto per chi volesse distibuire un .mdb per poter accedere
al design degli oggetti da codice e non volesse fornire i sorgenti
documentati).
Il Visual Basic di Access consente la creazione e modifica a Design Time di
quasi tutto ... mannaggia pare che manchi proprio una proprietà per
indentificare le righe commento.
Ne sapete qualcosa?
Tony

 ha scritto nel messaggio
news:aUma9.101078$n04.2...@twister2.libero.it...

Se il 1° carattere è l'APICE è una riga di commento.........!!!(Non sò se
c'è un sistema più elegante)
E' ovvio che devi ciclare tutte le RIGHE di tutti i MODULI, compresi le
FORM.
Non ti chiedo se sai come accedere alle righe dei moduli perchè mi pare tu
sia
già arrivato a questo..........!!!
@Alessandro.

 Ne sapete qualcosa?
        Visualizza > Barre degli strumenti > Personalizza...
        Comandi
        Modifica
        Rimuovi commento
    Attenzione perche' pare faccia qualche puttanata, in casi particolari.
    A me non va di usarlo perche' mi accontento dei miei errori.
--
Ciao :-)
Maurizio
--------
?SPQR(C)
 X
--------

 già arrivato a questo..........!!!
Beh, sì questo a questo metodo avevo pensato però si pone un problema:
supponiamo che in alcuni  .mdb/.adp (scritti da più persone) abbiano marcato
con REM la linea commento.
A sto punto la faccenda diventa rischiosa se testo la stringa REM...
Pensavo a un metodo sicuro al 100%: dato che Access identifica in verdino (o
altro colore per carità) le linee commento, può darsi che esista una
proprietà per identificarle a Design Time senza rischi.
Ciao, Tony

     A me non va di usarlo perche' mi accontento dei miei errori.
OK.
Ciao: Tony

 >     Attenzione perche' pare faccia qualche puttanata, in casi
particolari.
[...]


         Rimuovi commento
Ehmm ... non la trovo: può essere che tu stia utilizzando la versione 'XP e
non ci fosse in A '2000?
In ogni caso se doveste tirar fuori dal cilindro una proprietà per
l'identificazione della riga a Design Time postate, postate  ;-))
Ciao: Tony

 l'identificazione della riga a Design Time postate, postate  ;-))
    Se e' solo questione della riga allora potrebbe andar bene questo
abbozzo. Se invece si tratta dei commenti del tipo:
    <codice> : REM <commento>
-oppure-
    <codice> ' <commento>
non ci ho nemmeno pensato a scrivere qualcosa.
Public Sub DebugPrintAllModulesLinesUncommented()
  Dim lModuleIndex  As Long
  Dim oAcModule     As Access.Module
  Dim lLineIndex    As Long
  Dim sLine         As String
  Dim sTrimmedLine  As String
  With CurrentProject.AllModules
    For lModuleIndex = 0 To .Count - 1
      With .Item(lModuleIndex)
        DoCmd.OpenModule .Name
        Set oAcModule = Modules(.Name)
      End With
      With oAcModule
        Debug.Print .Name
        For lLineIndex = 1 To .CountOfLines
          sLine = .Lines(lLineIndex, 1)
          sTrimmedLine = Trim$(sLine)
          If (Len(sTrimmedLine) = 0) Then
            ' NO PRINT
          Else
            If ( _
                (Left$(sTrimmedLine, 1) = "'") _
                Or _
                (UCase$(Left$(sTrimmedLine, 4)) = "REM ") _
            ) Then
              ' NO PRINT
            Else
              Debug.Print sLine
            End If
          End If
        Next
        DoCmd.Close acModule, .Name
      End With
      Set oAcModule = Nothing
    Next
  End With
End Sub


 Public Sub DebugPrintAllModulesLinesUncommented()

Eh, eh ... non и dissimile dal codice che un collega ha preparato stamane,
con i rischi che potrebbe comportare.
Ovviamente il massimo sarebbe l'identificazione a botta sicura stile VBE,
comunque proverт certosinamente queste soluzioni, puт darsi che vadano
benone.
Ti ringrazio Maurizio.
Ciao, Tony

 vengono rimosse?
Crei un .mdb con un solo modulo di codice e lo riempi di righe commento.
Crei il relativo .mde
Apri con Notepad ... se le ritrovi ho ragione io  ;-D
Ciao: Tony

 benone.
        Property VBE As VBE
            sola lettura
            Membro di Access.Application
    Ho provato ad aggiungere ai riferimenti:
        Library VBIDE
            C:\Programmi\Microsoft Visual Studio\VB98\VB6EXT.OLB
            Microsoft Visual Basic 6.0 Extensibility
che contiene:
        Class VBE
            Membro di VBIDE
            L'oggetto di primo livello che contiene tutti gli altri
            oggetti e insiemi rappresentati in Visual Basic,
            Applications Edition.
ma come dicevo ho installato vb6. Potrebbe essere pero' che questa
possibilita' esista con MSOD e non con MSO Prof.



Non pensare che io pensi che tu non ci abbia gia' pensato ma se trovi
l'apice in una funzione tipo...
var = Dlookup("[Campo]", "Tabella", "CampoTrallalla = '" & Me.Trallallero &
"'")
cheffai?
e ci saranno sicuramente innumerevoli altri casi in cui l'apice e' incluso
in altro codice quindi non e' sempre vera :
<codice> ' <commento>
dovresti prevedere tutti i casi in cui....
... lassa star!
Tieniti i commenti che anche se uno li vede con il Notepad non se ne fa un
gran che.
Mandi Rob.

 gran che.
    Infatti. Intendevo proprio che non ci penso neppure.


 --------
Notte!

 possibilita' esista con MSOD e non con MSO Prof.
Ne sai una più del diavolo ;-)
Domattina vediamo che si può fa.
Ciao, Tony

 > "Maurizio Borrelli" [...]:

    Ok. Io l'ho fatto ( AC2K ). E tu?
