Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1

    variabili globali access moduli

    ciao a tutti sto facendo un programma in access con i moduli
    e avrei bisogno di dichiarare delle variabili diciamo globali im modo che che i valori che metto al suo interno richiamando la variabile da qualsiasi punto del programma abbiano sempre il valore da me settato all'inizio

  2. #2
    Devi semplicemente inserire un modulo dall'apposita finestra.
    Guarda l'immagine che ti ho allegato: clicca sul pulsante Moduli e poi su Nuovo.

    Tutto qui.


    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  3. #3
    si ma dopo la dichiarazione di una variabile deve essere fatta con public private dim o altro????

  4. #4
    devi usare Public
    così la vedi dappertutto.


    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  5. #5

    errore di runtime 13

    tipo non corrispondente



    Dim db As Database
    Dim rcsparametri As Recordset

    Dim vettoreparametri(21) As Integer, y As Integer

    'calcolo percorso dell'mde

    Dim dbs As Database
    Dim j As Integer
    Set dbs = CurrentDb

    path = dbs.Name
    j = Len(path)
    Do While (Mid(path, j, 1) <> "\")
    j = j - 1
    Loop
    percorso = Mid(path, 1, j - 1)
    dbs.Close

    'calcolo percorso dell'mde





    'carico i parametri
    Set db = CurrentDb
    Set rcsparametri = db.OpenRecordset("Select settaggi.* from settaggi")

  6. #6
    Scusami, se questo codice sta nel modulo, allora devi innanzi tutto sostituire Dim con Public.
    :master:

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  7. #7
    scusa ma allora le variabili una volta dichiarate sul modulo con public le posso settare dove voglio?

    scusami ma non è molto che programmo col visual basic

    io ho sempre programmato in asp

  8. #8
    Si, se tu hai un form e un modulo e nel modulo dichiari:

    Public mioNome as String

    poi nella load del form puoi fare una cosa del genere:
    codice:
    Sub Form_load()
        mioNome = "ladyBlu"
    End Sub
    Sub Form_Activate()
        MsgBox mioNome
    End Sub



    le variabili dichiarate nel modulo vogliono sempre la parolina magica Public, a meno che non le dichiari locali ad una procedura che si trova nel modulo stesso, nel cui caso puoi usare la Dim che rende la variabile visibile sono a quella procedura.

    forse sono stata un po' contorta, eh? :master:

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  9. #9
    si ma perchè su un altro modulo mi funziona e su quest'altro no?




    Option Compare Database

    Public ragionesociale As String
    Public località As String
    Public provincia As String
    Public indirizzo As String
    Public telefono As String
    Public fax As String
    Public partitaiva As String
    Public cap As String
    Public Userftp As String
    Public passwordftp As String
    Public urluploadftp As String
    Public ipserver As String
    Public aspunzipped As String
    Public cartellaallegati As String
    Public cartellaimmagini As String
    Public cartellatrasferimenti As String
    Public emailerrore As String
    Public emailgestore As String
    Public Passwordgestore As String
    Public smtpserver As String
    Public urldownloadftp As String
    Public percorso As String




    Sub caricaparametri()
    Dim db As Database
    Dim rcs As Recordset

    Dim vettoreparametri(21) As Integer, y As Integer

    'calcolo percorso dell'mde

    Dim dbs As Database
    Dim j As Integer
    Set dbs = CurrentDb
    Dim path
    path = dbs.Name
    j = Len(path)
    Do While (Mid(path, j, 1) <> "\")
    j = j - 1
    Loop
    percorso = Mid(path, 1, j - 1)
    dbs.Close

    'calcolo percorso dell'mde





    'carico i parametri
    Set db = CurrentDb
    Set rcs = db.OpenRecordset("Select settaggi.* from settaggi")

    'sql = "Select settaggi.* from settaggi order by id"
    'Set rcsparametri = CurrentDb.OpenRecordset(sql)
    If rcs.RecordCount <> 0 Then
    y = 0
    Do While rcs.EOF
    y = y + 1
    vettoreparametri(y) = rcs!valore
    rcs.MoveNext
    Loop
    ragionesociale = vettoreparametri(1)
    località = vettoreparametri(2)
    provincia = vettoreparametri(3)
    indirizzo = vettoreparametri(4)
    telefono = vettoreparametri(5)
    fax = vettoreparametri(6)
    partitaiva = vettoreparametri(7)
    cap = vettoreparametri(8)
    Userftp = vettoreparametri(9)
    passwordftp = vettoreparametri(10)
    urluploadftp = vettoreparametri(11)
    ipserver = vettoreparametri(12)
    aspunzipped = vettoreparametri(13)
    cartellaallegati = vettoreparametri(14)
    cartellaimmagini = vettoreparametri(15)
    cartellatrasferimenti = vettoreparametri(16)
    emailerrore = vettoreparametri(17)
    emailgestore = vettoreparametri(18)
    Passwordgestore = vettoreparametri(19)
    smtpserver = vettoreparametri(20)
    urldownloadftp = vettoreparametri(21)
    rcs.Close
    db.Close
    Else
    MsgBox "non ci sono parametri caricati"
    End If
    End Sub

  10. #10
    ma fammi capire...
    tu apri un recordset settato con tutti i campi della tua tabella "settaggi" e poi fai questo ciclo:
    codice:
    
    
    in cui assegni a vettoreparametri(y) solo un campo del tuo recordset.y = 0
    Do While rcs.EOF
    y = y + 1
    vettoreparametri(y) = rcs!valore
    rcs.MoveNext
    Loop
    e poi vorresti che
    codice:
    ragionesociale = vettoreparametri(1) 
    località = vettoreparametri(2) 
    provincia = vettoreparametri(3) 
    .......
    smtpserver = vettoreparametri(20) 
    urldownloadftp = vettoreparametri(21)
    tutte le variabili che setti con i valori assegnati a vettoreparametri abbiano valori diversi?
    ho capito bene?

    no perchè secondo me ognuna delle tue variabili (ragionesociale,località,provincia,ecc...) deve contenere il valore di un campo della tua tabella "settaggi", cioè:
    codice:
    Do While rcs.EOF 
        ragionesociale = rcs!ragionesociale 
        località = rcs!località 
        provincia = rcs!provincia 
        .......
        smtpserver = rcs!smtpserver 
        urldownloadftp = rcs!urldownloadftp 
    
        rcs.MoveNext 
    Loop

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.