codice VBA



  • codice VBA
    di GIUS (utente non iscritto) data: 05/10/2012 11:46:45

    Buongiorno,
    vorrei programmare imparare a programmare in VBA e mi chiedevo se c'è una certa logica nel comporre il codice, come la logica nel comporre le frasi in italiano ( prima il soggetto, poi il verbo, poi il complemento oggetto, ecc. ecc.), inoltre chiedo se si potrebbe avere un sunto ossia un elenco di tutte le funzioni e le procedure ossia un elenco di tutte le parole che usa il codice ( ad es. Dim, Var, ecc.)
    Grazie



  • di Francesco (utente non iscritto) data: 05/10/2012 13:06:38

    io mi associo chiedendo piu che altro una specie di elenco con le "istruzioni" più usate o utili


  • Funzioni Visual Basic
    di Mauro data: 05/10/2012 14:09:49

    Di seguito alcune utili funzioni VB:
     
    Funzioni Matematiche:
    
    Abs(X)
    La funzione calcola il valore assoluto dell'argomento.
    Cos(X)
    La funzione calcola il coseno di un angolo espresso in radianti.
    Exp(X)
    La funzione calcola il valore della funzione esponenziale e^x.
    Fix(X)
    La funzione elimina la parte decimale di un numero reale.
    Int(X)
    La funzione calcola la parte intera di un numero reale.
    Log(X)
    La funzione calcola la parte intera di un numero reale.
    Rnd(X)
    La funzione restituisce un numero pseudocasuale compreso tra 0 e 1.
    Round(espressione,numero di cifre decimali)
    La funzione restituisce il valore arrotondato dopo il numero di cifre decimali specificato.
    Sgn(X)
    La funzione restituisce -1 se x<0 , 0 se x=0, +1 se x>0 .
    Sin(X)
    La funzione calcola il seno di un angolo espresso in radianti .
    Sqr(X)
    La funzione calcola la radice quadrata di un numero reale.
    Tan(X)
    La funzione calcola la tangente di un angolo espresso in radianti
    
    Funzioni per la gestione delle Stringhe:
    
    Asc(stringa)
    La funzione restituisce il codice ASCII del primo carattere della stringa specificata. Se l'argomento è una stringa vuota viene segnalato un errore di run- time.
    Chr(codice)
    La funzione restituisce il carattere che ha il codice ASCII specificato.
    LCase(stringa)
    La funzione converte le lettere maiuscole presenti nella stringa in minuscolo.
    Left(stringa, n)
    La funzione restituisce i primi n caratteri della stringa a partire da sinistra.
    Len(stringa)
    La funzione restituisce il numero di caratteri che compongono la stringa.
    LTrim(stringa)
    La funzione restituisce una stringa che rappresenta quella originale in cui sono stati eliminati spazi bianchi iniziali.



  • di Vecchio Frac data: 05/10/2012 18:26:04

    cit. " mi chiedevo se c'è una certa logica nel comporre il codice "
    --> Come no? :) si chiama lessico, ortografia e sintassi, anche in VBA.
    Ci sono parole chiave che vano usate in una certa maniera, ci sono parametri da passare alle routine e alle funzioni, ci sono istruzioni e comandi propri del sistema su cui stai girando (un foglio di Excel è diverso da un documento di Word ma le due applicazioni espongono lo stesso modello ad oggetti, perciò i rispettivi VBA sono sovrapponibili e studiato uno si è in grado di padroneggiare l'altro).
    Imparare a programmare richiede tempo e pazienza. Quando cominciai io non c'era Internet e dovetti arrangiarmi con riviste specializzate e qualche libro (oggi tutta roba sorpassata: chi si ricorda il comando per caricare un file in Word 3 per DOS alzi la mano ^_^). Con internet, Google, forum e mailing list alla fine uno riesce a costruirsi gli strumenti per tentare, provare, sbattere il naso e riprovare.
    Una ricetta magica non c'è... un buon consiglio è saper usare la Guida incorporata e conoscere bene l'ambiente di sviluppo (l'editor di codice: quanti sanno che premendo F2 si accede all'indispensabile visualizzatore di oggetti?).
    Nè ci sono le istruzioni "più usate o utili"... tutte le istruzioni servono e soprattutto servono a uno scopo, che è quello dell'utilizzatore. Ripeto, partite dalla guida e dal registratore di macro, integrate con Google e servitevi senza pietà di forum come questi, pieni di gente seria e disponibile ^_^