Novità

domanda strana strana...

lotto_tom75

Advanced Premium Member
E' possibile in qualche modo attivare o disattivare da finestra input... parte del codice, senza dover per forza ricorrere a codici if then duplicati con le modifiche richieste, in fase di run time?

Cerco di spiegarmi con un esempio... 🙃

Se volessi disattivare o meno la visualizzazione in output posso in qualche modo attivare o disattivare la relativa riga in modalità run time senza necessariamente dovermi fare due versioni dello stesso codice (una con output e una senza)?

1° versione

Codice:
scrivi "pippo"

2° versione

Codice:
'non scrivere pippo

E' possibile attivare o meno la scrittura di pippo in run time senza dover implementare i due diversi codici analoghi? 🤔

Vi avevo avvertito che era strana... :LOL:🧑‍🍳
 

joe

Advanced Member >PLATINUM PLUS<
Metti, in serie, 2 test condizionali o se preferisci nidificati.

If Test_1

If Test_2

E' evidente che il secondo viene eseguito solo se si è superato il primo dei 2 Test.

Dopo di che Test_1 può essere condizionato, anche da un inputbox ed altri eventi particolari.

:)
 

lotto_tom75

Advanced Premium Member
Metti, in serie, 2 test condizionali o se preferisci nidificati.

If Test_1

If Test_2

E' evidente che il secondo viene eseguito solo se si è superato il primo dei 2 Test.

Dopo di che Test_1 può essere condizionato, anche da un inputbox ed altri eventi particolari.

:)

Ciao joe grazie della risp ma non intendevo questo... Vorrei proprio evitare di scrivere i due if e attivare o disattivare parte dello stesso codice... se ovviamente fosse possibile... :)
 

joe

Advanced Member >PLATINUM PLUS<
Effettivamente di Test condizionali ne basta "1".

Ma è chiaro che questo "1" è pilotato da qualcos'altro.

Cioè da un precedente test, o da una condizione preesistente, o da un input esterno,

anche solo dal caso ... ma ci deve essere per dividere le condizioni.

Codice:
Sub Main
   SN = InputBox("Scrivo","S/N","S")
   A = 2
   If SN = "S" And A = 2 Then Scrivi "Pippo On Demand"
   If A = 2 Then Scrivi "Pippo For Ever"
End Sub

:)
 

lotto_tom75

Advanced Premium Member
Effettivamente di Test condizionali ne basta "1".

Ma è chiaro che questo "1" è pilotato da qualcos'altro.

Cioè da un precedente test, o da una condizione preesistente, o da un input esterno,

anche solo dal caso ... ma ci deve essere per dividere le condizioni.

Codice:
Sub Main
   SN = InputBox("Scrivo","S/N","S")
   A = 2
   If SN = "S" And A = 2 Then Scrivi "Pippo On Demand"
   If A = 2 Then Scrivi "Pippo For Ever"
End Sub

:)

Non ho capito come si possa risolvere la mia domanda con l'implementazione di una seconda variabile condizionale fissa... ma grazie lo stesso big joe ;)

Ad ogni modo io cercherei più qualcosa di simile ai comandi ipotetici in run time... che dovrebbero agire sull'unica identica riga di codice target... es (scrivi "pippo") dicendo allo script:

"metti il commento..." = disattivala...

' scrivi "pippo" < la scritta non viene mostrata perchè in run time la riga è stata "commentata"...

"non mettere il commento..." = attivala...

scrivi "pippo" < la scritta si visualizzerà in output in quanto la riga è attiva essendo priva dell'apostrofo iniziale evidenziato sopra in rosso...
 
Ultima modifica:

claudio8

Premium Member
Mettici un input box dove ti pare anche in mezzo al costrutto se rispondi si o 1 il costrutto prosegue normalmente ,se rispondi no ti evita le attività che avrai inserito tra la condizione dipendente dall'input box.
 

joe

Advanced Member >PLATINUM PLUS<
Codice:
Sub Main

   S = InputBox("1 = SCRIVO / 0 = NON Scrivo","SCRIVO ?",1)
   If S Then Scrivi "Pippo On Demand"
  
End Sub
 

lotto_tom75

Advanced Premium Member
Ragazzi non riesco a spiegarmi...,comunque credo non sia possibile nemmeno implementare una cosa del genere... 😣 Pazienza dai 😜 Grazie comunque ad entrambi! (y)👋:)
 

joe

Advanced Member >PLATINUM PLUS<
Scusa ma ...

... Luigi ci ha spiegato e fatto esempi sul come ripulire una pagina in html scaricata dal web.

Comprese le tecniche e le condizioni con cui ricavare (o scrivere) SOLO i numeri desiderati.

Devi guardarti tutte le istruzioni per trattare le stringhe ed i testi sui manuali del Basic.

:)
 

lotto_tom75

Advanced Premium Member
Scusa ma ...

... Luigi ci ha spiegato e fatto esempi sul come ripulire una pagina in html scaricata dal web.

Comprese le tecniche e le condizioni con cui ricavare (o scrivere) SOLO i numeri desiderati.

Devi guardarti tutte le istruzioni per trattare le stringhe ed i testi sui manuali del Basic.

:)

Joe, non è una questione strettamente legata alle stringhe... ma all'ipotesi dell'esistenza o meno di un comando per etichettare e attivare o disattivare relative righe di codice fisso... 👋🙂
 

joe

Advanced Member >PLATINUM PLUS<
Non capisco perché aggiungi parole che avendo un loro significato intrinseco,

e non utile, alla comprensione, finiscono per essere controproducenti. (Nel particolare mi riferisco all'uso di "Codice Fisso")

Dunque:

Scrivi "Pippo" 'è la riga di comando in oggetto

Scrivi "Paperina" 'è una seconda linea di comando

Lo script una volta eseguito scrive:

Pippo
Paperina

Se anteponi il test condizionale alla prima linea ... Cioè:

If S=True Then "Scrivi Pippo"

Lo script eseguirà il comando "Scrivi Pippo" solo se S = True

e poi ... in ogni caso scriverà

Paperina.

Dunque con il test condizionale "If S= True"

hai la possibilità di attivare e disattivare il contenuto delle linee di comando a tuo volere.

Naturalmente se anteponi lo stesso test anche alla seconda linea

anche questa sarà sensibile alla presenza del valore True/False nella variabile "S"

Dunque quando "S = True" scriverà

Pippo
Paperina

Quando "S = False"

Lo script non scrive nulla

Quando avessi posto il TEST "If S = True" SOLO alla seconda linea,

SOLO "Scrivi Paperina" sarà sensibile al valore contenuto in "S".

Se invece vuoi pre-processare lo script come "se fossi tu" l'interprete Basic,

allora vale il consiglio del messaggio precedente. Bisogna analizzarlo linea per linea.

Cioè individuare quali sono i commenti e gli eventuali caratteri speciali,

da cui trarre le decisioni, sul da farsi.

:)
 
Ultima modifica:

lotto_tom75

Advanced Premium Member
Se invece vuoi pre-processare lo script come "se fossi tu" l'interprete Basic,

allora vale il consiglio del messaggio precedente. Bisogna analizzarlo linea per linea.

Cioè individuare quali sono i commenti e gli eventuali caratteri speciali,

da cui trarre le decisioni, sul da farsi.

:)

Forse è questo... :unsure: quello che vado cercando per questo mio sfizio elaborazionale... 👋:)
 

i legend

Premium Member
Ciao a tutti.
Se non vuoi usare la if metti il codice che ti serve in una funzione
Quando lo vuoi utilizzare la Lanci altrimenti la remmi così hai tutto su un rigo.
Tom con i vostri script super segreti è impossibile aiutarvi, non perché il problema sia troppo complicato ma perché non lo conosciamo.
Cmq come ti hanno già suggerito sembrerebbe la soluzione migliore.
L 8input box ti rallenta , vai di codice.
Dim scr
Scr=1' lo cambi in 1 oppure zero
If scr =1 then lancia funzione
Se scr lo imposti a zero l if non produce risultato
Ciao :)
 

Cinzia27

Premium Member
Ciao, Tom.
Ci provo anch' io.

Codice:
Sub Main

a= InputBox("Scrivo","10","20")

If a=10 Then
b="' 100"
Else
b=23
Scrivi b
Scrivi b+2
Scrivi 25+25
End If
 
End Sub
 

lotto_tom75

Advanced Premium Member
Nonostante nessuna di quelle qui presentate sia la soluzione a quello che ho immaginato... e che ripeto credo non sia fattibile... GRAZIE mille di nuovo a tutti gli intervenuti 👋:)
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 23 aprile 2024
    Bari
    47
    22
    34
    20
    50
    Cagliari
    33
    14
    86
    02
    62
    Firenze
    61
    22
    44
    19
    26
    Genova
    21
    12
    57
    82
    55
    Milano
    66
    05
    11
    70
    30
    Napoli
    05
    23
    25
    52
    73
    Palermo
    23
    44
    49
    71
    65
    Roma
    82
    37
    59
    34
    71
    Torino
    26
    42
    66
    15
    58
    Venezia
    57
    06
    68
    54
    84
    Nazionale
    21
    79
    49
    03
    01
    Estrazione Simbolotto
    Genova
    24
    02
    19
    03
    27
Alto