ความคิดเห็น •

  • @alessandrogalli5062
    @alessandrogalli5062 3 ปีที่แล้ว +2

    un solo commento....grazie per quello che fai sei bravissimo

    • @NickTheGeek
      @NickTheGeek 3 ปีที่แล้ว

      Grazie a te per il commento.

  • @filippo61
    @filippo61 3 ปีที่แล้ว +1

    Diventa sempre piu' interessante. Grazie :)

    • @NickTheGeek
      @NickTheGeek 3 ปีที่แล้ว

      Lo spero :D grazie a te

  • @postalucia
    @postalucia ปีที่แล้ว +1

    Grazie.

  • @francesred
    @francesred 3 ปีที่แล้ว +2

    Ciao Nicola. Al mn 23,60 la larghezza delle colonne si potrebbe fare con codice. Esempio With lstArchivioClienti .ColumnWidths = "70;90;90;30;80;160;0;0;0;0;15" End With. La materia è talmente interessante che qualche minuto in più non disturba

    • @NickTheGeek
      @NickTheGeek 3 ปีที่แล้ว

      Ciao Franco, grazie

  • @fender569
    @fender569 3 ปีที่แล้ว +1

    Bel lavoro Nick

    • @NickTheGeek
      @NickTheGeek 3 ปีที่แล้ว

      Grazie :)

    • @fender569
      @fender569 3 ปีที่แล้ว +2

      Dovrebbero trasmetterli alla TV italiana x far appassionare ed istruire i giovani al posto della TV spazzatura, ma come al solito le cose belle arrivano da iniziative personali, ancora COMPLIMENTI Nick

    • @NickTheGeek
      @NickTheGeek 3 ปีที่แล้ว

      Eh addirittura, troppo buono! Grazie ancora.

  • @marzioporro5780
    @marzioporro5780 ปีที่แล้ว +1

    Ciao Nick, sto seguendo con interesse il tuo progetto del Gestionale. Purtroppo ho qualche problema con il codice del video 80. Quando tento di lanciare la sub UserForm_initialize() il codice mi da un avviso di errore del tipo: Errore di compilazione "Variabile non definita", e la quarta riga precisamente il testo (x1up) viene evidenziato. Sai darmi qualche suggerimento per risolvere l'errore. Grazie Marzio.

    • @NickTheGeek
      @NickTheGeek ปีที่แล้ว

      Ciao Marzio, se hai scritto x1up allora l'errore è che al posto del numero 1 deve esserci la lettera L minuscola: xlup. Purtroppo con il font che uso nei video i due caratteri sono molto simili.
      Fammi sapere se il problema era quello.

  • @postalucia
    @postalucia ปีที่แล้ว +1

    Ciao Nicola! Come sai ti ho già fatto un sacco di complimenti e continuo a lavorare sui miei progetti tramite i tuoi corsi e video. A volta mi invento qualcosa che non so se è possibile e, dopo averci perso la gioventù, chiedo a te! 😃 Se io volessi avere una listbox con solo gli ultimi 10 movimenti oppure con solo i movimenti che ho eseguito quel giorno (tipo una listbox di prima nota). Quando eseguo una list box la vedo sempre dall'inizio, dall'alto e invece mi servono gli ultimi inserimenti. è possibile? Grazie! e super grazie!

    • @NickTheGeek
      @NickTheGeek ปีที่แล้ว +1

      Ciao, per avere gli ultimi 10 dovresti cambiare il loop:
      For i = 2 to ultima_riga_clienti
      con:
      For i = ultima_riga_clienti - 9 to ultima_riga_clienti
      in modo che parta da 9 righe sopra all'ultima, ad esempio se ultima_riga_clienti = 50, allora partirà dalla 41 e arriverà alla 50 (quindi le ultime 10 righe).
      Se invece ti serve la data odierna, prima dell'AddItem dovresti aggiungere una condizione in modo da verificare se la cella con la data corrisponde a oggi; ad esempio se la data è nella colonna E, allora:
      If Cells(i, 5) = Date Then
      quindi tutte le operazioni a partire dall'additem saranno eseguite solo se la cella con la data contiene la data di oggi.

    • @postalucia
      @postalucia ปีที่แล้ว

      @@NickTheGeek l'ho messo qui: LastRow = Sheets("Dipendenti").Range("A" & Rows.Count).End(xlUp).Row - 5
      GRAZIE! 🤩 sei sempre gentile e disponibile!

    • @NickTheGeek
      @NickTheGeek ปีที่แล้ว

      Con questa linea di codice però inserisci nella variabile LastRow il numero di righe totali meno 5, ad esempio se in tutto hai 24 righe allora LastRow vale 19.
      In questo caso il loop:
      For i = 2 to LastRow
      ti prenderebbe tutte le righe escluse le ultime 5, ad esempio se ne hai 24 ti metterebbe in listbox tutte dalla 2 alla 19.

    • @postalucia
      @postalucia ปีที่แล้ว +1

      @@NickTheGeek Capito, devo riprovare perché mi sembrava giusto invece, leggendoti, ho controllato e confermo (ma non c'erano dubbi!) che mancano proprio le ultime cinque righe. Riprendo subito i tuoi suggerimenti e ricomincio. grazie, sei un grande! 😊

  • @giovannifaedda1663
    @giovannifaedda1663 2 ปีที่แล้ว

    Buongiorno, complimenti per questo video corso. Veramente fatto bene.
    Avrei una domanda. Una volta creata la userform come da esercizio, nel momento in cui scrivo il codice e cambio la private sub da userform click a userform initialise l'intestazione passa da userform a general. Lancio la userform ma nella lst non compare alcun dato. Dove sbaglio?

    • @NickTheGeek
      @NickTheGeek 2 ปีที่แล้ว

      Ciao, grazie per i complimenti. L'unica cosa che mi viene in mente è verificare di aver scritto correttamente il nome dell'evento, che deve essere esattamente UserForm_Initialize (vedi minuto 6:07), quindi verifica soprattutto di aver scritto Initialize con la zeta (e non con la esse).
      Se è scritto correttamente e ancora non funziona, anziché scrivere il nome dell'evento a mano, scegli "UserForm" e "Initialize" dai rispettivi menu a tendina in alto.

  • @albertogreco6409
    @albertogreco6409 3 ปีที่แล้ว

    Buongiorno, ormai non posso più perché lo già sostituito con il tuo.

  • @sergiofac5792
    @sergiofac5792 2 ปีที่แล้ว

    Nicola buongiorno, ho scoperto da poco i suoi tutorial sul vba materia a me sconosciuta ed avendo tempo a disposizione ( pensionato) sto pasticciando non poco e devo dire che mi affascina al quanto ma sono a chiederle come posso fare ad inserire una barra di scorrimento orrizzontale nella casella di testo, in quanto non potendo allungare eccessivamente la casella alcuni dati mi si troncano , tipo per lo scorrimento verticale che si forma in automatico. se avrai voglia e tempo per una risposta un grazie anticipato e ancora tanti complimenti per i video

    • @NickTheGeek
      @NickTheGeek 2 ปีที่แล้ว

      Ciao Sergio, grazie per i complimenti, mi fa piacere che in qualche modo i miei video ti siano utili.
      Per quanto riguarda la barra orizzontale, devi usare la proprietà ScrollBars della textbox. Se guardi la proprietà nell'editor di VBA, puoi notare che i valori possibili sono: 0 = nessuna, 1 = orizzontale, 2 = verticale, 3= entrambe. Quindi per la barra orizzontale devi selezionare il valore 1 dal menu a tendina, oppure la puoi impostare direttamente nel codice, scrivendo:
      TextBox1.ScrollBars = 1
      Ovviamente devi cambiare il nome della textbox con quello vero.
      Fammi sapere se funziona e se è tutto chiaro.

    • @sergiofac5792
      @sergiofac5792 2 ปีที่แล้ว

      @@NickTheGeek Nicola buonasera e grazie per la risposta immediata, con il suo suggerimento la barra di scorrimento è comparsa ma si sposta di un tanto non sufficiente a visionare il contemuto della colonna, in quanto la texbox è composta da 5 colonne e quella di cui ho necessità di scorrere è l'ultima a destra ma piu di un tot non si sposta . Ha qualche soluzione in merito ? sicuramente si
      nell'attesa un cordiale saluto

    • @NickTheGeek
      @NickTheGeek 2 ปีที่แล้ว

      Ho un dubbio, è una textbox o una listbox? Se è una textbox, come hai fatto a dividerla in colonne? Se è una listbox, probabilmente devi modificare le proprietà Width (la larghezza complessiva) e ColumnWidths (la larghezza delle singole colonne) in modo da riuscire a visualizzare anche l'ultima colonna per intero. Se non trovi una soluzione, prova (se vuoi) a mandarmi il file a nickthegeek.yt@gmail.com

    • @sergiofac5792
      @sergiofac5792 2 ปีที่แล้ว +1

      @@NickTheGeek Nicola buon giorno mi scusi ha ragione è una listbox ed ho risolto seguendo i suoi consigli grazie

  • @francescosedita6938
    @francescosedita6938 3 ปีที่แล้ว +1

    ok benissimo

  • @albertogreco6409
    @albertogreco6409 3 ปีที่แล้ว

    Buongiorno Nick, ho appena visto il tuo video n.80,ma nella mia lstArchivioClienti non appare niente praticamente vuota. ??????

    • @NickTheGeek
      @NickTheGeek 3 ปีที่แล้ว

      Ciao Alberto, vuoi dire che all'Initialize della frmArchivioClienti non succede niente? In questo caso puoi copiare qui tutto il codice dell'evento Initialize?

  • @raffaelesala992
    @raffaelesala992 3 ปีที่แล้ว

    Ciao Nicola sono due giorni che divento matto per cercare di risolvere un errore di tipo: "Variabile oggetto o variabile del blocco with non impostata"
    Confido in un tuo aiuto.
    Ho tagliato le righe che si ripetono.
    Con il debug credo di avere individuato il problema nella variabile:
    riga_StrutMetMod_da_modificare
    ma non capisco come.
    Ti spiego il progetto:
    ho fatto una routine che chiama da una tabella excel di 48 colonne x n righe, le carica in un Form:
    Private Sub UserForm_Initialize()
    Sheets("Data_Lists").Activate
    carica_Strut_Met_Mod
    lstStrutMetMod.ColumnCount = 48
    lstStrutMetMod.ColumnWidths = "200;0;0;0;26;26;26;26;26;30;30;30;30;28;28;28;28;28;0;0;0;35;0;35;30;30;30;30;30;28;28;28;28;28;28;28;28;30;28;28;28;28;30;35;35;35;35;35"
    cmdModificaParametro.Enabled = False
    cmdCancellaParametro.Enabled = False
    Sub carica_Strut_Met_Mod()
    Dim matrice() As Variant
    ReDim matrice(48) As Variant
    matrice = Range("Time_Production")
    lstStrutMetMod.List = matrice
    End Sub
    Sub compila_lista_StrutMetMod()
    lstStrutMetMod.AddItem
    lstStrutMetMod.List(lstStrutMetMod.ListCount - 1, 0) = Cells(r, 31)
    'lstStrutMetMod.List(lstStrutMetMod.ListCount - 1, 1) = Cells(r, 32) Non visualizzate
    'lstStrutMetMod.List(lstStrutMetMod.ListCount - 1, 2) = Cells(r, 33) Non visualizzate
    'lstStrutMetMod.List(lstStrutMetMod.ListCount - 1, 3) = Cells(r, 34) Non visualizzate
    lstStrutMetMod.List(lstStrutMetMod.ListCount - 1, 4) = Cells(r, 35)
    ............. tagliato.........
    Fino a qui tutto OK.
    -------------------------------------------------------------------------
    Poi, alla selezione di uno di questi record si attiva il comando Modifica che attiva la Form sulla quale si caricano i campi della riga selezionata (vedi la sub sotto)
    alla riga: frmModificaStrutMetMod.Show
    si blocca tutto ed esce l'errore
    'Questa rountine ci restituisce tutti i valori conteuti nella riga selezionata all'interno
    'della ListBox=lstStrutMetMod. Per fare questo bisogna mettere in relazione un campo
    'con la relativa tabella del foglio Excel. Definisco Index_StrucMeth come campo per ricerca.
    Private Sub cmdModificaParametro_Click()
    For r = 0 To lstStrutMetMod.ListCount - 1
    If lstStrutMetMod.Selected(r) = True Then
    StrutMetMod_da_modificare = lstStrutMetMod.List(r, 0)
    Exit For
    End If
    Next r
    Unload Me
    frmModificaStrutMetMod.Show
    End Sub
    -------------------------------------------------------------------------
    Option Explicit
    Dim riga_StrutMetMod_da_modificare As Variant
    Private Sub cmdConferma_Click()
    Dim risposta_modifica_StrutMetMod As Integer
    risposta_modifica_StrutMetMod = MsgBox("Sei sicuro di confermare le modifiche eseguite?", vbYesNo)
    If risposta_modifica_StrutMetMod = vbYes Then
    Sheets("Data_Lists").Activate
    Cells(riga_StrutMetMod_da_modificare, 31) = txtNomeStrutMetMod.Value
    Cells(riga_StrutMetMod_da_modificare, 32) = cmbStruttura.Value
    Cells(riga_StrutMetMod_da_modificare, 33) = cmbFase.Value
    Cells(riga_StrutMetMod_da_modificare, 34) = cmbMetodo.Value
    Cells(riga_StrutMetMod_da_modificare, 35) = txtMdoPerfo.Value
    ............. tagliato.........
    MsgBox "Modifiche eseguite!"
    Unload Me
    frmAnagraficaStrutMetMod.Show
    End If
    End Sub
    Private Sub cmdEsci_Click()
    Unload Me
    frmAnagraficaStrutMetMod.Show
    End Sub
    'Associa i dati in Data_Lists con i campi per le modifiche
    Private Sub UserForm_Initialize()
    txtStrutMetMod = StrutMetMod_da_modificare
    Sheets("Data_Lists").Activate
    Columns("AE:AE").Select
    riga_StrutMetMod_da_modificare = Selection.Find(StrutMetMod_da_modificare).Row
    txtStrutMetMod = Cells(riga_StrutMetMod_da_modificare, 31)
    cmbStruttura = Cells(riga_StrutMetMod_da_modificare, 32)
    cmbMetodo = Cells(riga_StrutMetMod_da_modificare, 33)
    cmbFase = Cells(riga_StrutMetMod_da_modificare, 34)
    txtMdoPerfo = Cells(riga_StrutMetMod_da_modificare, 35)
    ............. tagliato.........
    lblDescrizioneStrutMetMod.Enabled = False
    txtStrutMetMod.Enabled = False

    End Sub

    • @NickTheGeek
      @NickTheGeek 3 ปีที่แล้ว +1

      Ciao. Mi è difficile capire il problema vedendo solo il codice, se vuoi mandami il file a nickthegeek.yt@gmail.com

  • @carminechilo1097
    @carminechilo1097 ปีที่แล้ว

    Ciao, scusa, una curiosità: ma se una colonna della listbox ha un contenuto troppo lungo, è possibile mandarlo a capo?

    • @NickTheGeek
      @NickTheGeek ปีที่แล้ว

      Ciao, non credo sia possibile, perché la listbox nasce per mostrare liste di oggetti, e non dati che possono raggiungere lunghezza considerevole; forse si può fare con altri controlli aggiuntivi da installare, che però non conosco.

    • @carminechilo1097
      @carminechilo1097 ปีที่แล้ว +1

      @@NickTheGeek ok, grazie mille. dovrò inventarmi qualcosa!!!!! ;-)

  • @albertogreco6409
    @albertogreco6409 3 ปีที่แล้ว

    Ciao Nick, proprio ora sto seguendo il video 82 , ma anche con questo sto avendo problemi. Spero di risolverli.

  • @marzioporro5780
    @marzioporro5780 ปีที่แล้ว +1

    Ciao Nick, a riguardo il mio ultimo commento, sono riuscito a risolvere il problema, si trattava di un errore di battitura, avevo interpretato male il segno di linea con un uguale. Scusa ancora e grazie.

    • @NickTheGeek
      @NickTheGeek ปีที่แล้ว

      Ciao Marzio, nessun problema figurati!

  • @albertogreco6409
    @albertogreco6409 3 ปีที่แล้ว

    Ciao Nick, 1° errore di run-time 1004 , quando nella userform_inizialize inserisco compila_lista. 2° non funziona la txtfiltro inserisco un carattere e non accade nulla.

    • @NickTheGeek
      @NickTheGeek 3 ปีที่แล้ว

      Mi dovresti incollare il codice di tutte le subroutine coinvolte, quindi txtFiltro_Change, Userform_Initialize e compila_lista.

  • @marzioporro5780
    @marzioporro5780 ปีที่แล้ว

    Grazie Nick, purtroppo risolto un problema si è presentato un errore del genere "Errore di run-time 381 Impossibile impostare la proprietà List. Indice della matrice di proprietà non valido. Perdonami ma non è molto che utilizzo il VBA. A presto Marzio

    • @NickTheGeek
      @NickTheGeek ปีที่แล้ว

      Ciao Marzio, ho visto che hai risolto, meglio così.

  • @albertogreco6409
    @albertogreco6409 3 ปีที่แล้ว

    ecco!! Già non funziona con la sub compila_lista mi dà errore 1004 ecc.ecc.. non riesco a capire!

    • @NickTheGeek
      @NickTheGeek 3 ปีที่แล้ว

      Immagino che parli del video 82; mi dovresti dire:
      1) quale riga fa scattare l'errore
      2) il messaggio completo di errore, perché il codice 1004 ha diverse descrizioni
      3) quando ti compare l'errore, cioè facendo cosa (ad esempio aprendo la userform, modificando il filtro, etc.)
      Inoltre dovresti incollare qui nei commenti il codice di tutte le subroutine coinvolte, quindi txtFiltro_Change, Userform_Initialize e compila_lista.

  • @albertogreco6409
    @albertogreco6409 3 ปีที่แล้ว

    Ciao Nick, ho copiato il tuo codice ed ora funziona, ma devo capire perché il mio non funziona.

    • @NickTheGeek
      @NickTheGeek 3 ปีที่แล้ว

      Riesci a incollare il tuo codice qui nei commenti?

  • @riccardomarinelli7439
    @riccardomarinelli7439 2 ปีที่แล้ว

    Ciao Nick anche a me prendendo il tuo codice mi da la lista in bianco

    • @NickTheGeek
      @NickTheGeek 2 ปีที่แล้ว

      Ciao Riccardo, hai copiato esattamente il mio codice su un tuo file uguale al mio? In tal caso dovrebbe funzionare, casomai mandami il file a nickthegeek.yt@gmail.com, ma non potrò guardarlo tanto presto.