Risultati da 1 a 7 di 7

Discussione: Modifica Codice VBA



  1. #1
    L'avatar di Cirino
    Clicca e Apri
    Data Registrazione
    Feb 2016
    Località
    Villarosa
    Messaggi
    48
    Versione Office
    365
    Likes ricevuti
    1

    Modifica Codice VBA

    Salve Forum
    Ho un problema di modifica di un codice vba, di cui riporto, per sintesi, solo la parte da modificare:
    dOra = CDate(Format(.TextBox1.Text, "hh:mm"))
    dOra1 = DateAdd("h", 6, dOra)


    Attualmente l’estratto del codice sopraindicato funziona nel senso che le 6 ore (di cui alla riga 2^), vengono sommate alle ore trascritte nella texBox1 di una Userform.
    Ciò premesso, il completamento in modifica che mi necessita è il seguente:

    SE l'ora digitata in TextBox1 della Userform è minore o uguale delle ore 7:30, le 6 ore debbono essere sommate sempre e solo ad ore: 7:30;
    SE invece l'ora digitata in TextBox1 è maggiore delle ore 7:30, le 6 ore vanno sommate al reale orario digitato in testBox1.
    Ringrazio anticipatamente, saluti, Cirino

  2. #2
    L'avatar di Baloon_50
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Milano - Italy
    Età
    67
    Messaggi
    3343
    Versione Office
    2013 PC
    Likes ricevuti
    483
    Likes dati
    49
    Citazione Originariamente Scritto da Cirino Visualizza Messaggio
    Salve Forum
    Ho un problema di modifica di un codice vba, di cui riporto, per sintesi, solo la parte da modificare:
    dOra = CDate(Format(.TextBox1.Text, "hh:mm"))
    dOra1 = DateAdd("h", 6, dOra)


    Attualmente l’estratto del codice sopraindicato funziona nel senso che le 6 ore (di cui alla riga 2^), vengono sommate alle ore trascritte nella texBox1 di una Userform.
    Ciò premesso, il completamento in modifica che mi necessita è il seguente:

    SE l'ora digitata in TextBox1 della Userform è minore o uguale delle ore 7:30, le 6 ore debbono essere sommate sempre e solo ad ore: 7:30;
    SE invece l'ora digitata in TextBox1 è maggiore delle ore 7:30, le 6 ore vanno sommate al reale orario digitato in testBox1.
    Ringrazio anticipatamente, saluti, Cirino
    Se non ho capito male la risposta è questa :

    Codice: 
    if dOra < "07:30" or dOra = "07:30" then
           dOra1 = "13:30"
    else
           dOra1 = DateAdd("h", 6, dOra)
    end if

    A volte basta usare parole inutili come “grazie” e “per favore” per rendere la vita più bella.
    (ELKonigsburg)
    Dice il saggio : "se vuoi essere aiutato devi metter l'allegato"
    (Nick Carter - Ten)

  3. #3
    L'avatar di Cirino
    Clicca e Apri
    Data Registrazione
    Feb 2016
    Località
    Villarosa
    Messaggi
    48
    Versione Office
    365
    Likes ricevuti
    1
    Grazie intanto per esserti fatto carico della mia richiesta.
    Quelle due righe di codice da me indicate, le ho sostituite con quelle indicate nella tua risposta, ottenendo il seguente risultato:
    La mia prima condizione del SE, funziona bene, infatti digitando in TextBox1 un orario antecedente alle ore 7:30, il risultato restituito è corretto, infatti restituisce le ore 13:30.
    La mia seconda ed ultima condizione del SE, quando si digita un'orario > delle ore 7:30 (per esempio: 7:31), restituisce erroneamente sempre "13:30" in luogo del corretto dato di "13:31" (07:31 + 6 ore = 13:31).
    Grazie ed a dopo, se ti è possibile.

  4. #4
    L'avatar di Baloon_50
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Milano - Italy
    Età
    67
    Messaggi
    3343
    Versione Office
    2013 PC
    Likes ricevuti
    483
    Likes dati
    49
    Citazione Originariamente Scritto da Cirino Visualizza Messaggio
    Grazie intanto per esserti fatto carico della mia richiesta.
    Quelle due righe di codice da me indicate, le ho sostituite con quelle indicate nella tua risposta, ottenendo il seguente risultato:
    La mia prima condizione del SE, funziona bene, infatti digitando in TextBox1 un orario antecedente alle ore 7:30, il risultato restituito è corretto, infatti restituisce le ore 13:30.
    La mia seconda ed ultima condizione del SE, quando si digita un'orario > delle ore 7:30 (per esempio: 7:31), restituisce erroneamente sempre "13:30" in luogo del corretto dato di "13:31" (07:31 + 6 ore = 13:31).
    Grazie ed a dopo, se ti è possibile.
    Ciao Cirino
    per quanto riguarda la seconda condizione non ho fatto alcuna modifica anche perchè tu hai detto che funzionava quindi mi sembra strano che adesso non vada più.
    Ma tu prima del SE inizializzi dOra ? dOra = CDate(Format(.TextBox1.Text, "hh:mm"))

    fammi sapere.

    A volte basta usare parole inutili come “grazie” e “per favore” per rendere la vita più bella.
    (ELKonigsburg)
    Dice il saggio : "se vuoi essere aiutato devi metter l'allegato"
    (Nick Carter - Ten)

  5. #5
    L'avatar di Cirino
    Clicca e Apri
    Data Registrazione
    Feb 2016
    Località
    Villarosa
    Messaggi
    48
    Versione Office
    365
    Likes ricevuti
    1
    Ciao Baloon_50
    Tutto OK!, in effetti avevo eliminato l'inizializzazione a cui tu fai riferimento. Non sono molto pratico ed essendo nuovo d'iscrizione a questo Forum ti chiedo di farmi sapere cosa debbo fare per assegnarti la riconoscenza alla Risposta esatta che hai gentilmente formulato. Intanto ti ringrazio di cuore e ti invio un grande BRAVO!, Ciao, Cirino

  6. #6
    L'avatar di Baloon_50
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Milano - Italy
    Età
    67
    Messaggi
    3343
    Versione Office
    2013 PC
    Likes ricevuti
    483
    Likes dati
    49
    Citazione Originariamente Scritto da Cirino Visualizza Messaggio
    Ciao Baloon_50
    Tutto OK!, in effetti avevo eliminato l'inizializzazione a cui tu fai riferimento. Non sono molto pratico ed essendo nuovo d'iscrizione a questo Forum ti chiedo di farmi sapere cosa debbo fare per assegnarti la riconoscenza alla Risposta esatta che hai gentilmente formulato. Intanto ti ringrazio di cuore e ti invio un grande BRAVO!, Ciao, Cirino
    la riconoscenza si può dare in diversi modi chi accetta un "mi piace" (sotto il profilo "I like this!") e chi come me si accontenta di un bravo ed un grazie come hai fatto tu.

    Forse puoi ancora fare qualcosa eheheh
    Vai nella barra dei menu, situata all'inizio di questa discussione, troverai il menu “Strumenti Discussione” quindi scegli “Segna questo Thread come risolto”

    ciao e alla prossima :261:

    A volte basta usare parole inutili come “grazie” e “per favore” per rendere la vita più bella.
    (ELKonigsburg)
    Dice il saggio : "se vuoi essere aiutato devi metter l'allegato"
    (Nick Carter - Ten)

  7. I seguenti utenti hanno dato un "Like"


  8. #7
    L'avatar di Cirino
    Clicca e Apri
    Data Registrazione
    Feb 2016
    Località
    Villarosa
    Messaggi
    48
    Versione Office
    365
    Likes ricevuti
    1
    dopo avere segnato questo thread come risolto, non mi resta altro che rinnovarti i miei ringraziamenti. Ciao, Cirino :23:

Discussioni Simili

  1. modifica codice macro per eliminazione dati da più fogli
    Di ceskonet13 nel forum Domande su Excel VBA e MACRO
    Risposte: 12
    Ultimo Messaggio: 16/02/17, 15:56
  2. Modifica codice
    Di givi79 nel forum Domande su Excel VBA e MACRO
    Risposte: 11
    Ultimo Messaggio: 17/01/17, 22:04
  3. Modifica codice evidenziare riga in un range.
    Di Berna11 nel forum Domande su Excel VBA e MACRO
    Risposte: 8
    Ultimo Messaggio: 25/08/16, 23:52
  4. modifica macro
    Di D@nilo nel forum Domande su Excel VBA e MACRO
    Risposte: 8
    Ultimo Messaggio: 13/04/16, 22:06
  5. test Code Tags and BB Code : testare codice Tag e codice BB
    Di Doc.AElstein nel forum Test dei vostri post
    Risposte: 8
    Ultimo Messaggio: 11/07/15, 17:15

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •