Variabili VBA



  • Variabili VBA
    di Pave8 (utente non iscritto) data: 04/09/2016 16:54:12

    Salve a tutti, ho un esame di informatica da sostenere e sul materiale universitario non c'è tutto il programma chiesto dal professore. Sapreste dirmi se le variabili VBA, senza essere dichiarate, causano un errore in fase di debug oppure prendon sempre il tipo boolean?
    Grazie



  • di alfrimpa data: 04/09/2016 17:12:34

    Ciao Pave8

    Se nel progetto VBA non c'è l'istruzione "Option Explicit" (che rende obbligatoria la dichiarazione delle variabili) una variabile non dichiarata non causa errore ed essa assume la,medesima tipologia del dato che viene memorizzato la prima volta es.

    var = "Pippo"

    var diventa una variabile di tipo String.

    Comunque se fai una ricerca con Google troverai una valanga di informazioni al riguardo.

    Inoltre mi sembra assai strano che sul materiale universitario non ci sia questo argomento perchè il tema delle variabili è fondamentale in qualunque linguaggio di programmazione.

    Alfredo





  • di Albatros54 data: 04/09/2016 17:29:06

    h t t p://www.excelvba.it/Forum/thread.php?f=1&t=10934
    forse troverai la risposta alla tua domenda





  • di Pave8 (utente non iscritto) data: 04/09/2016 18:31:47

    Ciao Alfredo, sul libro di testo che ci hanno fatto acquistare (Informatica e cultura dell'informazione, McGraw-Hill) l'argomento VBA non viene nemmeno trattato e neanche mettendo a confronto le sbobinature delle lezioni scritte da diversi studenti si possono trovare le risposte alla maggior parte delle domande del compito. Tra l'altro sono iscritta a Psicologia quindi è dubbia anche l'utilità di questi argomenti per la mia carriera, ma vabbè.

    Ho una domanda anche che mi chiede del tipo String, le alternative sono le seguenti:
    - contiene solo i valori true e false
    - contiene qualsiasi sequenza di caratteri ma non sequenze di numeri
    - contiene sia caratteri che numeri ma non simboli come ? ,
    - contiene qualsiasi sequenza di caratteri

    Aggiungo che per noi studenti di psicologia senza basi né tantomeno spiegazioni questi argomenti sono incomprensibili quindi purtroppo cercando materiale on-line mi capita di non riuscire a ritrovare la risposta che cerco perché spesso il linguaggio è troppo tecnico per me.

    Grazie per la gentile risposta



  • di Albatros54 data: 04/09/2016 18:42:13

    In allegato troverai delle pagine tratte da un manuale, forse ti possono servire a chiarire le idee.
    ciao
    albatros54





  • di alfrimpa data: 04/09/2016 18:47:05

    Ciao Pave

    Comprendo il tuo disorientamento comunque la risposta corretta alla tua domanda è la seconda

    La variabile String può contenere solo stringhe di testo.

    Guardati l'allegato che ti ha postato Albatros54 (ciao Gioacchino) che è molto esplicativo (sperando che tu conosca un po' d'inglese).

    Alfredo





  • di alfrimpa data: 04/09/2016 18:53:28

    Prova a guardare anche questo link che almeno è in italiano (scrivi h t t p senza spazi).

    h t t p://mikevba.altervista.org/passi/passi004.htm





  • di Albatros54 data: 04/09/2016 19:05:33

    @ alfrimpa
    Ciao Alfredo
    Cit..."La variabile String può contenere solo stringhe di testo"
    che possono contenere caratteri anche numerici ,caratteri speciali, quindi la risposta corretta è la quarta





  • di alfrimpa data: 04/09/2016 19:29:39

    Si Gioacchino hai ragione

    Intendevo anche quando i numeri sono stringhe ma temo che Pave non riesca a capire questi discorsi

    Un caro saluto

    Alfredo





  • di Cucù data: 05/09/2016 10:41:22

    "sono iscritta a Psicologia quindi è dubbia anche l'utilità di questi argomenti per la mia carriera, ma vabbè."

    Bhe io fossi in te non ne sarei cosi sicura...



  • di Vecchio Frac data: 05/09/2016 11:41:53

    La psicologia dei programmatori è sempre un argomento affascinante. Prendi Cucù come esempio... sparisce per settimane, poi rientra e spara qualche perla di saggezza






  • di Pave8 (utente non iscritto) data: 05/09/2016 12:32:40

    Chiaramente più cose si sanno (e si sanno fare) meglio è, ma ad un esame del genere ne preferirei uno ben strutturato di inglese per esempio. Il mio indirizzo è quello di psicologia del lavoro e non mi sembra di vitale importanza sapere che i CD-RW hanno una lega di argento, indio, antimonio e tellurio ;)
    L'esame di informatica ci sta, insegnatemi però ad utilizzare software di statistica per eventuali esperimenti/ricerche!

    Comunque visto che ci sono ne approfitto per chiedervi se esiste un forum dove poter chiedere esercizi su diagrammi a blocchi/input/output/algoritmi.

    Grazie comunque a tutti per le risposte, se qualcuno è ancora convinto che ci sia un'utilità in quello che sto studiando (per la mia carriera, un domani non si sa mai!) ben venga, sarei felice se riuscisse a convincere anche me :)



  • di Vecchio Frac data: 05/09/2016 13:16:50

    Allora guarda, IMHO l'infarinatura di informatica ci sta bene, in ogni professione intellettuale. Poi dipende dall'infarinatura, dal dettaglio, dall'approfondimento che si vuole avere, e non ultimo dalla passione personale. Non è del tutto fuori luogo studiare gli strumenti Office per la propria attività: non ti serve un software specializzato di statistica e analisi per il calcolo tecnico (come per esempio MatLab) se ti basta Excel per analizzare uno scenario o una linea di tendenza. Certo che da qui a pensare che ti serve addirittura VBA (per automatizzare le operazioni noiose) è un bel salto, intendo che magari bastano quattro formule ben fatte e l'uso delle tabelle pivot, per dire.
    Non ho idea se esistono forum specializzati su diagrammi a blocchi e algoritmi, perchè non è un mondo separato dalla visione "informatica" delle cose. Gli informatici tendono a sviluppare soluzioni procedurali (algoritmi) per problemi deterministici (cioè dei quali si sa che esiste almeno una soluzione). Uno dei modi più diffusi per affrontare un problema è scomporlo nelle diverse parti, creando prima dei macro processi per arrivare poi ai livelli di dettaglio più profondi; si descrivono i passi necessari per la soluzione mediante pseudocodice (un italiano semi strutturato) ovvero mediante diagrammi a blocchi che descrivono gli input e gli ouput passando dagli income e dagli outcome. Poi si passa a tradurre lo pseudocodice nel linguaggio scelto. Poi si passa al test e al debbugging. Infine al collaudo e al rilascio. Spesso il ciclo non finisce mai perchè si fanno sempre revisioni :)





  • di scossa data: 06/09/2016 10:50:21

    Ciao,

    cit.: "una variabile non dichiarata non causa errore ed essa assume la medesima tipologia del dato che viene memorizzato la prima volta"

    questo non è corretto. Una variabile non dichiarata assume il tipo Variant, e come tale si "adegua" (conversione implicita) al tipo del valore di volta in volta assegnatole (vedi codice sotto).

    N.B.: Se dichiarassi miavar as Integer la seconda assegnazione produrrebbe un errore.


    scossa's web site
    Se tu hai una mela, ed io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)

     
    Sub prova()
      'Dim miavar As Integer
      miavar = 7
      Debug.Print VarType(miavar) '2 Integer
      miavar = "pippo"
      Debug.Print VarType(miavar) '8 String
    End Sub