Istruzione IF...THEN...ELSE

di il
3 risposte

Istruzione IF...THEN...ELSE

Buon giorno a tutti,
avrei bisogno di un aiuto.....
Sono alle prese con un'istruzione IF condizione THEN...ELSE in cui però la condizione la devo costruire poco alla volta.
Mi spiego meglio: ho definito una variabile di tipo string e devo, attraverso diversi passaggi, costruire la variabile affinchè diventi una condizione che poi devo testare con la IF.
Il problema è questo: quando la mia variabile arriva ad assumere il seguente valore
ad es.: VO = VC Or VC = VC e la testo con la IF, il sistema mi aggiunge gli apicini all'inizio ed alla fine della variabile stessa e la considera quindi proprio una stringa e non una condizione, quindi mi va in errore il programma sull'istruzione IF.
Come faccio a fargli capire che la mia variabile è una condizione e non una semplice stringa di caratteri?
Spero di essere stata chiara......
Grazie per l'aiuto. Buona giornata a tutti.

3 Risposte

  • Re: Istruzione IF...THEN...ELSE

    Premesso che questa non credo sia la sezione corretta nella quale inserire la domanda che hai posto..., non specifichi il Linguaggio cosa importante.
    Altra cosa che non spieghi è la costruzione strutturale della tua CONDIZIONE.
    Se la costruisci come Stringa il sistema non è in grado di applicare una Risoluzione Implicita o Esplicita del contenuto, che pertanto verrà interpretato in modo ASETTICO come stringa.

    Mi spiego...
    Dati
    A=2
    B=4
    e tu vuoi verificare che la variabile C sia compresa non puoi scrivere:
    "C>A And C<B"
    ma devi scrivere
    C>A And C<B

    Sinceramente però credo ci sia qualche cosa di poco chiaro.
  • Re: Istruzione IF...THEN...ELSE

    Ciao Alex, intanto ti ringrazio per l'attenzione.
    Il linguaggio di programmazione è Visual Basic.
    Io vorrei infatti scrivere C>A And C<B ma dato che tutta questa condizione in realtà non la scrivo direttamente nel codice ma si compone, non riesco a farlo capire al programma. Cioè:
    Creo una variabile StringaCtrl di tipo String;
    la inizializzo a "";
    leggo una tabella dal quale estraggo 1 o più record fatti ad esempio così:
    PosDa PosA Relaz IndArtVar OperLog
    5 6 EQ VO OR
    5 6 EQ VC
    In input ho un valore che chiamo Variante e devo controllare se la porzione di stringa di Variante contenuta tra PosDa e PosA sia EQ (cioè [Relaz]) al valore contenuto in IndArtVar; in più se in OperLog ho qualcosa devo legare questo controllo con il controllo derivante dallo stesso ragionamento fatto sul record successivo.
    Nel mio caso ho in input: "KAVLVC" che è la Variante, e devo controllare se
    StringaCtrl = StringaCtrl & Mid(Variante, RgSel![PosDa], ((RgSel![PosA] - RgSel![PosDa]) + 1))
    StringaCtrl = StringaCtrl & RTrim(RgSel![Relax]) & RTrim(RgSel![IndArtVar])
    quindi, alla fine della mia elaborazione ho che StringaCtrl assume valore: VC = VO Or VC = VC
    ora devo testare se è Vero per poter fare delle altre cose ma si arrabbia perchè quando scrivo
    If StringaCtrl Then.... lui mi traduce la mia condizione in If "VC = VO Or VC = VC" Then... e mi va in errore il programma.
    Spero di essermi spiegata un po' di più questa volta.
    Grazie ancora
  • Re: Istruzione IF...THEN...ELSE

    Ho il sospetto che la tua domanda molto abbia in comune con questo articolo:
    http://www.iprogrammatori.it/forum-programmazione/net-framework/importare-stringhe-visual-basic-t13114.html
    All'interno, trovi le mie considerazioni relative a VB6, in quanto non avevo capito potesse trattarsi di NET.
    Reputo il tuo un problema di INTERPRETE SCRIPTING... ma probabilmente non sarà così semplice...

    L'esempio in tutti i casi aiuta.
Devi accedere o registrarti per scrivere nel forum
3 risposte