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
    giovedì 02 maggio 2024
    Bari
    43
    35
    83
    74
    40
    Cagliari
    10
    23
    48
    01
    87
    Firenze
    71
    12
    04
    27
    01
    Genova
    83
    37
    42
    70
    78
    Milano
    28
    72
    27
    30
    07
    Napoli
    34
    42
    13
    67
    11
    Palermo
    37
    77
    19
    17
    12
    Roma
    79
    85
    90
    55
    49
    Torino
    83
    56
    46
    57
    19
    Venezia
    41
    48
    57
    12
    15
    Nazionale
    84
    70
    10
    67
    74
    Estrazione Simbolotto
    Milano
    22
    09
    04
    01
    11
Alto