Grazie Nick per questo fantastico corso. Ho imparato moltissimo. Ogni tanto vengo a rivedere i tuoi video per cambiare o migliorare i miei lavori. Un Grazie veramente sentito
@MaurizioLotti-w5s9 ай бұрын
Grazie per quanto messo a disposizione e complimenti per la profonda competenza dimostrata!
@luciopollicita3603 жыл бұрын
Ciao Nick. Ho seguito con il massimo interesse tutti i tuoi video su questo bel progetto gestionale e non posso fare a meno di inviarti i miei più sinceri complimenti per la tua chiarezza di esposizione e "facilità" di soluzione dei vari problemi che man mano si sono presentati. Ho imparato un sacco di cose ed ho finalmente le idee più chiare sulle potenzialità di questo fantastico strumento che è il vba. Avendo avuto dei trascorsi di programmazione (anni 80/90) con il vecchio "DBase III" (con il quale ho creato parecchie procedure in .prg poi compilate con il "Clipper") ho riscontrato molte similitudini nei criteri di utilizzo e ragionamento di base ed i tuoi video hanno smosso in me la smania di riprendere con nuovo entusiasmo lo studio di questo linguaggio. Ti faccio di nuovo i miei più sinceri complimenti in attesa di poterti seguire in un nuovo progetto. Cordiali saluti. Lucio
@NickTheGeek3 жыл бұрын
Ciao Lucio, grazie per il commento.
@ms888 Жыл бұрын
Ciao Nick, sono io che ringrazio Te per la mole di lavoro che hai svolto. Grazie anche a Te sono riuscito a sviluppate un programma di gestione fatture, a rispolverare concetti arrugginiti e studiare il vba. Tutti i tuoi video sono il vangelo da tenere sempre a disposizione quando viene qualche dubbio. Spero che pubblicherai ancora in vba. Ad maiora.
@NickTheGeek Жыл бұрын
Ciao Mario, grazie mille, mi fa piacere che i video siano stati utili!
@Santigliana963 жыл бұрын
Finito oggi di studiare tutti i video. Un lavoro magistrale il tuo. Complimenti.
@NickTheGeek3 жыл бұрын
grazie Mauro!
@salvatorefre19612 жыл бұрын
Complimenti, ho seguito tutti i tuoi video, e ti posso dire che mi hai fatto appassionare alla programmazione VBA. Grazie di tutto
@NickTheGeek2 жыл бұрын
Grazie a te Salvatore, mi fa piacere
@nicksan7263 Жыл бұрын
Ciao Nick ho finito ora di apprendere tutto ciò che potevo dai tuoi video. Volevo complimentarmi perchè hai fatto un "Super Corso VBA". Grazie infinite.
@NickTheGeek Жыл бұрын
Grazie a te!
@antonyaddos49413 жыл бұрын
Ciao Nick, ho visto tutti i tuoi video, devo terminare con il sw gestionale. Ti faccio i miei complimenti per la chiarezza d'esposizione, la pazienza, grande spirito di abnegazione e soprattutto per l'umiltà dimostrata, so che hai fatto un grande lavoro. Grazie per averci dedicato tempo prezioso. Continua con progetti interessanti come questo. Ancora complimenti. Buona serata! Antony
@NickTheGeek3 жыл бұрын
Ciao Antony, grazie a te per il commento.
@fender5693 жыл бұрын
Ciao Nick, sono stato un po assente x lavoro, ho seguito tutti i tuoi video, meraviglioso lavoro, complimenti
@NickTheGeek3 жыл бұрын
Grazie fender
@lorenzosabatino44862 жыл бұрын
CARO NICK TI SEGUO FIN DALLA PRIMA METÀ DEGLI ANNI DUEMILA, DA QUANDO DICEVI CHE IL TUO COMPUTER ERA UN MACININO, TI DICO SOLO QUESTO AGGETTIVO ("FANTASTICO")
@NickTheGeek2 жыл бұрын
Grazie Lorenzo, non so esattamente cosa intendi per "prima metà degli anni duemila" (non dovrebbe essere fino al 2005?), ma mi fa piacere che tu mi segua da parecchio tempo.
@lorenzosabatino44862 жыл бұрын
@@NickTheGeek Si hai ragione sono andato a recuperare il file che ho scaricato e la data di creazione "del file che ho scaricato" fine 2005
@lorenzosabatino44862 жыл бұрын
@@NickTheGeek E comunque era VBA.
@NickTheGeek2 жыл бұрын
Ma era uno dei miei file di questi video su VBA?
@francescosedita69383 жыл бұрын
Grazie per il suo impegno. Speriamo in un suo impegno futuro anche con piccoli esempi Saluti Francesco
@NickTheGeek3 жыл бұрын
Ciao Francesco, grazie per il commento, con Excel mi fermo qui.
@riccardopadoan42762 жыл бұрын
Ciao Nick, sto seguendi i tuoi tutorial di VBA excel con molto interesse. Sei molto chiaro nelle esposizioni e soprattutto prendi in considerazione (nei limiti del possibile) ogni tipo di problematica che si può incontrare mentre si scrive un codice. Ti scrivo, non solo per i complimenti, ma soprattutto perchè ho bisogno di risolvere un problema, per il momento di difficile soluzione. Quando vivevo in Italia mi ero fattto un gestionale interamenmte in Excel ma utilizzavo anche un software di contabilità autorizzato. Ora vivo all'estero e i programmi di contabilità italiani, non sono utilizzabili. Sono quasi alla fine, mna mi sono messo in testa di creare delle maschere utilizzando meno possibile i fogli di lavoro e ora vorrei fare una cosa e mi serve il tuoi aiuto. Per ragioni estetiche più che tecniche avrei l'esigenza di estrarre dei dati da una Listbox e passarli a un altra listbox. Ripeto che non ho avuto tempo di vedere tutti i tuoi video e dovrai perdonarmi se hai già trattato il problema in qualche lezione. Una cosa simile l'hai fatta nei video 64-65-66 ma i dati li leggevi da un foglio, io vorrei leggerli da una listbox. Mi spiego. Ho un Database piuttosto sostenzioso (più di 1200 record con 23 campi ciasuno) che vengono presentati, ripuliti dalle informazioni non necessarie e poi filtrati con delle Textbox i Combobox. Il filtro più utilizzato è quello per il campo chiave univoco (univoco per modo di dire) e già qua non ci salto fuori avendo i dati nella list Box (cosa invece semplicissima da fare leggendo il foglio dati. Se troverai il tempo di rispondermi, magari potrò essere più chiaro e . . . . ti ringrazio in anticipo. Un saluto
@NickTheGeek2 жыл бұрын
Ciao Riccardo, grazie per i complimenti. Non so se ho capito bene il problema; la soluzione che mi viene in mente è di copiare elemento per elemento dalla prima listbox alla seconda, se una certa condizione è soddisfatta; in questo esempio suppongo che ListBox1 abbia 23 colonne, e di copiare da Listbox1 a Listbox 2 solo se nella prima colonna di ListBox1 c'è il valore abc: For riga = 0 to ListBox1.ListCount-1 ' cicla fra tutte le righe della listbox1 If ListBox1.List(riga, 0) = "abc" Then ' verifica se la condizione è vera ListBox2.AddItem ' aggiunge una riga vuota nella listbox2 For colonna = 0 to 22 ' copia tutta la riga nella listbox2 ListBox2.List(ListBox2.ListCount-1, colonna) = ListBox1.List(riga, colonna) Next colonna End If Next riga Non ho capito però come si inseriscono nel discorso le textbox e le combobox di cui mi parli. Fammi sapere.
@riccardopadoan42762 жыл бұрын
@@NickTheGeek Inbnanzitutto grazie per la risposta così veloce. Hai capito benissimo il poblema ed è proprio così, forse in maniera meno elegante, che ho cercato di risolverlo. Non so perchè come avevo fatto io, non mi funzionava. La TextBox e le varie ComboBox, sono semplicemente dei criteri di filtro.
@riccardopadoan42762 жыл бұрын
@@NickTheGeek Ho provato il tuo codice. I cicli concatenati funzionano senza errori. Purtroppo il popolamento della seconda listbox, viene eseguito solo per la prima volta e solo sulla prima colonna, che nel mio caso corrisponde all'inidice, campo univoco che identifica il numero sequenziale del movimento contabile
@NickTheGeek2 жыл бұрын
Per capire meglio devo vedere il file, se vuoi mandamelo a nickthegeek.yt@gmail.com
@abdelkrimsafiddine7732 Жыл бұрын
ciao ho scoperto per caso i video posso dire che sono molto interessante è sicuramente la strada per me sarà lunga e pieno de difficoltà si come non so niente di programmazione "VBA" con Excel, tutto via sono pronto a affrontare tutto quanto grazie
@NickTheGeek Жыл бұрын
Grazie a te per il commento!
@roccodicosola3453 жыл бұрын
Ciao NickTheGeek Scusami se torno a chiederti alcune cose relative a questo progetto gestionale.Sto' cercando di adattarlo ad una mia esigenza particolare.Atteso che la mia base dati è vuota,vedo che quando vado a registrare un ordine e clicco sul bottone cmd ConfermaOrdine dà sempre errore nella riga seguente:- Cells(prima_riga_vuota_ordini, 1) = "O" & Format(Right(Cells(ultima_riga_ordini, 1), 6) + 1, "000000") e quindi non mi permette di andare avanti.Naturalmente se la base dati NON è vuota non vi è nessun errore.Quindi presumo e sicuramente sbaglio che forse il gestionale quando la base dati è vuota vede come "ultima_riga_ordini" l'intestazione di colonna degli ordini, cioè CODICE ORDINE e quindi non riesce ad incrementare di una unità tale testo.L'errore che viene visualizzato è - Errore di run Time 13 - Tipo non corrispondente. Se puoi darmi una dritta come risolvere questo problema con la base dati vuota.Grazie e scusa del disturbo.
@NickTheGeek3 жыл бұрын
Ciao Rocco, direi che hai centrato il problema. Non ho fatto prove, ma credo che per risolvere sia sufficiente usare una condizione: If ultima_riga_ordini = 1 Then Cells(prima_riga_vuota_ordini, 1) = "O000001" Else Cells(prima_riga_vuota_ordini, 1) = "O" & Format(Right(Cells(ultima_riga_ordini, 1), 6) + 1, "000000") End If In pratica, se l'ultima riga è la 1 (cioè se ci sono solo le intestazioni), allora il codice ordine è O000001, altrimenti viene creato incrementando quello della riga precedente. In alternativa, al posto di verificare se ultima_riga_ordini = 1, potresti verificare altre condizioni, ad esempio se la cella A1 è uguale a "CODICE ORDINE" (sconsigliato perché cambia ad ogni foglio) oppure se la cella A2 è vuota.
@roccodicosola3453 жыл бұрын
@@NickTheGeek Provato.Naturalmente seguendo le tue indicazioni funziona tutto.Confermo ancora la tua disponibilità e competenza.Grazie a te ho imparato qualcosa sul VBA.Grazie
@NickTheGeek3 жыл бұрын
Grazie a te per il commento.
@carminechilo1097 Жыл бұрын
Ciao, complimenti per il corso. Io avrei solo un problema. Ho notato che appena parte una userform mi impedisce di lavorare su altri file excel aperti in precedenza o di aprirne di nuovi. È possibile ovviare a questo problema? Grazie in anticipo
@NickTheGeek Жыл бұрын
Ciao, grazie per i complimenti. Se intendi che con la userform aperta non puoi usare tutto il resto di Excel, allora prova a modificare la proprietà della userform "ShowModal" da True a False.
@carminechilo1097 Жыл бұрын
@@NickTheGeek farti una domanda, si va a botta sicura. 6 davvero un grande!!!
@NickTheGeek Жыл бұрын
Grazie!
@gianniserrano68772 жыл бұрын
Ciao Nick, ho seguito sino in fondo il tuo progetto ed è stato davvero entusiasmante. Complimenti per la tua chiarezza e per la tua capacità di far comprendere questo linguaggio di programmazione. Ti devo però un'ultima domanda legata alla possibilità che più utenti possano non solo usare contemporaneamente il gestionale in VBA ma anche avere accessi limitati, ovvero possano fare alcune cose ma non tutte. Prima di tutto esistono queste possibilità di utilizzo differenziato/limitato della procedura ed in caso di risposta affermativa, hai qualche suggerimento da darmi? Grazie in anticipo per il tuo supporto.
@NickTheGeek2 жыл бұрын
Ciao gianni, grazie, addirittura entusiasmante! Per quanto riguarda la tua domanda non so risponderti, non ho mai sentito parlare di possibilità di limitare le funzionalità in base all'utenza; non credo sia possibile farlo.
@gianniserrano68772 жыл бұрын
@@NickTheGeek grazie per il tuo riscontro.
@stefanotoffano86702 жыл бұрын
Ciao, ho fatto come hai scritto ma non compare il MsgBox, mi ero dimenticato di dirti che l'evento descritto deve avvenire dalla cella G16 a G215, tutte le celle hanno lo stesso menù a tendina, c'ero mezzo riuscito con Intersect ma anche quello ha smesso poi di funzionare.
@NickTheGeek2 жыл бұрын
Farei così: Private Sub Worksheet_Change(ByVal Target As Range) Dim intervallo As Range Set intervallo = Range("g16:g215") If Not Intersect(Target, intervallo) Is Nothing Then Select Case Target.Value Case "Albero" MsgBox "questo è un albero" Case "Casa" MsgBox "questa è una casa" End Select End If End Sub Però ho solo modificato il codice per gestire l'intervallo. Se non ti funzionava prima non dovrebbe funzionarti nemmeno adesso. Fammi sapere.
@stefanotoffano86702 жыл бұрын
@@NickTheGeek Ciao Nick, ho fatto come hai detto e funziona, ottimo. Però non capisco perché se, dopo aver selezionato Albero con comparsa del relativo pop-up informativo, premo Ok e seleziono la stessa cella e premo il tasto CANC., non succede nulla. Se seleziono più celle (anche solo 2) e faccio CANC mi compare "Errore di run-time '13': Tipo non corrispondente", premo allora il tasto DEBUG e mi porta in VBA alla linea Case "Albero" evidenziandola di giallo. Per il mio file ho solo cambiato le parole Albero e Casa con altre e funziona, però quando premo un pulsante a cui è associata una Macro che cancella tutti i dati, fa lo stesso errore.
@NickTheGeek2 жыл бұрын
Se il target è costituito da più celle il codice non funziona, perché non sa quale cella prendere come riferimento per far comparire o meno il messaggio. Potresti inserire questa linea prima dell'If: If Target.Cells.Count = 1 Then in modo da controllare se il target è costituito da una sola cella; così se è costituito da più celle il codice non viene eseguito e puoi eseguire cancellazioni multiple. Ricordati di aggiungere un altro End If alla fine. Fammi sapere.
@stefanotoffano86702 жыл бұрын
@@NickTheGeek Grazie Nick funziona tutto. Grazie ancora.
@LoZio_Pollo3 жыл бұрын
Ciao tigre, ho guardato tutti e 129 gli episodi, ho bisogno di una mano perchè il programma esegue subito la macro e non riesco ad entrare nei fogli per poter mettere i miei prodotti, clienti ecc... come posso fare?
@NickTheGeek3 жыл бұрын
Ciao, dovresti usare una versione precedente rispetto alla 1.00, perché con quella i fogli non si vedono; quindi direi la 0.49 oppure, se mi ricordo bene, anche la 0.50
@annaritacarpineta512711 ай бұрын
Ho notato una cosa nel mio caso le Macro di Excel sono Attivate, ma se do il progetto a qualsiasi, e la persona che lo vuole utilizzare, se non ha le Macro Attivate sul suo PC, si apre il file e tutto il Gestionale non funziona, e possibile, alla Funzione Auto Open di Excel, aggiungere una macro che controlla non solo se aperto un altro file Excel, ma che Attivi in automatico le macro, di quel PC. Spero di essere stata chiara nella spiegazione.
@NickTheGeek11 ай бұрын
Direi di no, sarebbe un controsenso rispetto al significato del blocco macro: se si potessero abilitare da VBA, sarebbe facilmente aggirato.
@stefanotoffano86702 жыл бұрын
Ciao NICK, complimenti per i video. Volevo chiederti dove trovo una spiegazione, che sicuramente hai trattato, che mi faccia comparire un msgbox in base al testo che seleziono in una cella dal menù a tendina associato alla stessa. Mi spiego meglio, nel menù a tendina associato alla cella, ci sono varie informazioni selezionabili ma quando scelgo una specifica, deve comparire un msgbox con uno specifico messaggio. Ho provato in vari modi ma non riesco a farlo comparire quando seleziono quello specifico testo. Grazie e complimenti ancora.
@NickTheGeek2 жыл бұрын
Ciao Stefano, grazie per i complimenti. Se la combo è già valorizzata e devi solo scegliere un valore e quindi far comparire il messaggio, devi usare l'evento Change della combo, e il codice sarebbe questo: Private Sub ComboBox1_Change() Select Case ComboBox1.Value Case "valore1" MsgBox "hai selezionato il primo valore" Case "valore2" MsgBox "hai selezionato il secondo valore" End Select End Sub In questo caso i valori "valore1" e "valore2" sono già caricati nella combo prima di selezionare un valore e quindi far scattare l'evento Change. Però credo che mi sfugga qualcosa, cioè non capisco esattamente cosa intendi con "menu a tendina associato alla cella", cioè in che senso associato?
@stefanotoffano86702 жыл бұрын
Ciao, e grazie per la risposta celere. Il menù a tendina di cui parlo è quello creato con il "Convalida Dati" di Excel, quando viene selezionato il tastino accanto alla cella, compaiono un numero X di testi, quello che devo fare è che quando viene selezionato per esempio il testo "Albero" o "Casa", mi compaia un Msgbox in cui sia scritto un testo tipo "Ricordati di fare questo prima di selezionare la cella successiva". Non avrei intenzione di fare una ComboBox, anche perché non ne ho le capacità, ma scrivere una funzione con VBA che attivi il MsgBox nel momento in cui vengono selezionati solo ed esclusivamente quei due testi, per gli altri, presenti nel menù a tendina, non serve. Grazie.
@NickTheGeek2 жыл бұрын
Allora ti serve l'evento Change del foglio. Devi scrivere il seguente codice all'interno del foglio, quindi nella casella dei progetti all'interno dell'editor di VBA devi selezionare il foglio, e non un modulo qualsiasi. Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$1" Then Select Case Target.Value Case "Albero" MsgBox "questo è un albero" Case "Casa" MsgBox "questa è una casa" End Select End If End Sub Il codice viene eseguito ogni volta che c'è una modifica sul foglio; viene verificato se la modifica è nella cella A1 (modifica la cella in base a dove si trova effettivamente il menu a tendina nel tuo foglio) e in caso affermativo viene eseguito il Select Case. Per capire meglio dove scrivere il codice prova anche a guardare il video 45 di questa stessa playlist. Fammi sapere.
@marcosperanza97342 жыл бұрын
Bellissimo e utilissimo... Serie molto lunga ma efficace per capire il funzionamento del vba... Ps ti vorrei chiedere se possibile avere il file per spulciare il codice .ho in mente di fare un file personale su le cripto e avere alcune funzionalità di ricerca.... calcoli...e istruzioni mi sarebbe utile. Eventualmente posso contattarla per avere delle delucidazioni?. Grazie
@NickTheGeek2 жыл бұрын
Grazie Marco, per quanto riguarda il file puoi trovare il link nella descrizione del video. Mi dispiace ma non ho tempo per seguire interi progetti, se hai domande specifiche falle pure nei commenti.
@giuseppeintiso263 жыл бұрын
Ciao Ho rilevato questo errore Nella sezione "Modifica ordine" quando vuoi cambiare il nominativo cliccando su "Cambia" e dal form successivo "Modifica Cliente Ordine" inserisci il cognome Rossi che corrisponde a più clienti con lo stesso cognome si apre il Form successivo "Lista clienti Trovati", da qui selezioni il cliente desiderato e cliccando su conferma dovrebbe poi riportare i dati del cliente nel form "Modifica Cliente Ordine" ed invece i dati non vengono riportati, cosa diversa avviene se inserisci il nome esatto del cliente, il singolo cliente vengono riportati nel form i dati corrispondenti.
@NickTheGeek3 жыл бұрын
Ciao Giuseppe, grazie per la segnalazione. Il problema nasce dal fatto che all'initialize della form ListaClienti c'è l'istruzione: lista_client_da_modifica_ordine = False Commentandola il giro funziona, ma dovrò verificare se questo comporta altri problemi successivi.
@salsaciro3 жыл бұрын
Ciao Nicola, in una cartella excel composta da n fogli (es 10) è possibile inserire in uno di essi (ad esempio: foglio1) una casella combinata (con n voci) e creare un collegamento ipertestuale ad ogni singola voce della stessa casella? In pratica, selezionando una delle voci della casella combinata, excel deve aprire il foglio desiderato in base alla selezione attata. Grazie e buona giornata.
@NickTheGeek3 жыл бұрын
Ciao Ciro, suppongo si possa fare. Se il foglio è il foglio1 e la combo si chiama ComboBox1, devi scrivere in un qualche evento (ad esempio apertura del file oppure attivazione del foglio) le istruzioni per popolare la combobox, tipo: ComboBox1.Clear ComboBox1.AddItem "Foglio2" ComboBox1.AddItem "Foglio3" ComboBox1.AddItem "Foglio4" etc. aggiungendo tutti i fogli Poi all'interno dell'oggetto Foglio1 (quindi non in un modulo generico, ma direttamente nel Foglio1) scrivi questa sub: Private Sub ComboBox1_Change() If ComboBox1.Value "" Then nome_foglio_da_attivare = ComboBox1.Value Sheets(nome_foglio_da_attivare).Activate End If End Sub
@antoniopolo17213 жыл бұрын
Ciao Nick, ho visto tutti i video del progetto e sono molto interessanti, complimenti per come gli hai illustrati, sono un autodidatta e ho imparato moltissimo. Volevo fare una domanda, credo di aver perso qualche spiegazione. Consegnando il programma a un cliente e dopo voler fare delle modifiche, come recuperare i dati popolati nei fogli contenente i dati?. Grazie
@NickTheGeek3 жыл бұрын
Ciao Antonio, credo che in quel caso l'unico sistema sia quello di non bloccare completamente il file, ma di rendere ad esempio solo inaccessibile la parte di VBA tramite password.
@roccodicosola3452 жыл бұрын
Ciao NickTheGeek.Ho rivisto il tuo video 129 perchè mi serviva capire come rendere NON visibile i fogli di un mio applicativo.In sostanza come da te detto voglio che si devono vedere solo le userform.Allora ho inserito su tutte le userform la sub-routine "Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) .......end if" per non far chiudere le userform dalla X. Poi,relativamente all'evento "'Private Sub Workbook_Open()...end if " ho trascritto lo stesso codice messo da te.Poi al tasto ESCI della HomePage ho inserito la sub-routine esci_dal_programma".Sembrava andare tutto bene invece quando chiudo la Homepage dal tasto ESCI il programma mi chiede se voglio uscire, io rispondo di SI,il programma si chiude senza far vedere alcun foglio ma in modo che non sono riuscito a capre si riapre nuovamente la HomePage ed al secondo tentativo di chiusura funziona tutto.Cioè il programma si chiude come previsto da te.E' come se al primo click del bottone ESCI viene eseguita la sub-routine ESCI-DAL-PROGRAMMA,l'applicativo si chiude ma subito dopo viene immediatamente eseguito nuovamente l'evento 'Private Sub Workbook_Open()" della cartella di lavoro...........Hai una spiegazione
@NickTheGeek2 жыл бұрын
Ciao Rocco, senza vedere il file mi è difficile capire il problema. Se vuoi, puoi mandarmelo a nickthegeek.yt@gmail.com, ma non so quando potrò guardarlo.
@roccodicosola3452 жыл бұрын
@@NickTheGeek Grazie per quello che fai.Ti ho mandato all'indirizzo e-mail indicato il file in questione che è stato svuotato di tutto.Vi è solo la sub-routine "esci_dal_programma".Ma nonostante questo il programma si chiude e si riapre nuovamente come ti ho detto nel precedente post.Grazie in anticipo.
@SilvioFortunato_Adeo3 жыл бұрын
Ciao Nick, ho seguito il tuo corso per principianti di VBA e attraverso le tue spiegazioni mi sono addentrato e poi apassionato all'argomento. Sono un utilizzatore (per lavoro) di Excel da lunga data, e con il lavoro attuale che faccio, ho la possibilità ed il tempo di implementare un utilizzo del foglio dati un po' più evoluto. Scopiazzato le procedure che hai utilizzato nel corso ed le ho riadattate all'uso dei fogli (estremamente basic) che abbiamo in ufficio. Tutte le "Form" che ho implementato le ho testate strada facendo e funzionano (anche se fatto da un professionista si poteva fare sicuramente meglio), ma mi trovo ad un punto morto che non riesco a superare. Ti chiedo se possibile illustrarti la questione per vedere se con la tua esperienza è possibile trovare una soluzione più funzionale. ti ringrazio anticipatamente se vorrai rispondermi. Silvio
@NickTheGeek3 жыл бұрын
Ciao Silvio, se si tratta solo di una domanda "teorica" o di codice allora puoi scrivere qui nei commenti, altrimenti se ritieni che possa essere utile che io veda il file, allora mandalo pure a nickthegeek.yt@gmail.com, se non è una cosa troppo complicata cerco di darti una mano
@SilvioFortunato_Adeo3 жыл бұрын
@@NickTheGeek ti mando il file così è più semplice spiegarti.
@NickTheGeek3 жыл бұрын
ricevuto, lo guardo nei prossimi giorni appena riesco
@SilvioFortunato_Adeo3 жыл бұрын
@@NickTheGeek ok grazie
@sergiopotato5873 жыл бұрын
Grande Nick!!! Sempre ottimo... like. Mi serve un aiutino.. se ad una casella di testo do il .setfocus, lui ci mette il cursore.. ok.. MA quello che serve a me, visto che nella casella c'è già un valore, voglio che questo valore venga evidenziato. In modo che se inserisco un numero nuovo, mi sostituisca il vecchio invece di scriverglielo di seguito.. esempio.. nella cella c'è 10.. io premo 2.. deve apparire 2 e non 102. Grazie 1000
@NickTheGeek3 жыл бұрын
Grazie Sergio. Prova così: subito dopo aver impostato il setfocus, scrivi queste due istruzioni: TextBox1.SelStart = 0 TextBox1.SelLength = Len(TextBox1.Text) Con la prima imposti l'inizio della selezione al carattere 0 (cioè il primo), con la seconda imposti la lunghezza della selezione pari alla lunghezza del contenuto della textbox.
@sergiopotato5873 жыл бұрын
@@NickTheGeek sei un grande, grazie 1000.. Ultima domanda sfruttando il codice che hai appena scritto: Mettiamo che io voglia selezionare cio che è scritto e col tuo esempio funziona. Ma siccome, esempio, ho tipo 10 txtbox e non voglio ripetere istruzioni, c'è un modo di sostituire la parte iniziale cioè txtbox1 con txtAttiva? In modo che funzioni con qualunque txtbox sia attiva/ selezionata? Ovviamente deve valere anche per private sub txtboxAttiva_exit........
@NickTheGeek3 жыл бұрын
Per quanto riguarda quelle due linee di codice, puoi provare a sostituire TextBox1 con Me.ActiveControl, ma non l'ho mai usato e non so se funzioni. Per quanto riguarda il nome dell'evento, invece, non saprei, credo di averci provato anche in questo progetto per snellire un pezzo di codice ma non avevo trovato soluzione.
@sergiopotato5873 жыл бұрын
@@NickTheGeek ok Nick grazie mille, proverò :)
@mauriziobertagna30953 жыл бұрын
Ciao Nick, ho seguito tutti i video con molto interesse perché mi hanno permesso di imparare molte cose e per questo ti ringrazio. Vorrei però farti notare un problema che non so se è solo mio o del mio pc, ma utilizzando la versione definitiva (1.00), quando apro Excel, scelgo il file della versione 1.00 e vedo che crea un file vuoto (che scompare subito dalla vista e non è presente nemmeno nella barra delle applicazioni) e poi esce il messaggio "Per il corretto funzionamento non devono esserci altri file aperti, l'applicazione verrà chiusa". L'unico modo per ovviare a questo problema (almeno quello che ho trovato io) è quello di aprire un altro file Excel, chiuderlo e poi aprire il file versione 1.00. Spero tu mi possa dare delle indicazioni in merito e ringraziandoti per l'impegno profuso nel realizzare questa applicazione condividendola con noi neofiti del VBA, ti invio i miei più cordiali saluti.
@NickTheGeek3 жыл бұрын
Ciao Maurizio, purtroppo non so esserti utile, sul mio computer la versione 1.00 dà quel messaggio solo se c'è un altro file Excel aperto. Se non ce ne sono, deve aprirsi direttamente il gestionale.
@Sancaru723 жыл бұрын
Ciao Nick, e ora???? Che facciamo noi che ti abbiamo seguito fin qui? Farai un altro progetto vero? :) Questo Gestionale è davvero un ottimo spunto per creare le proprie applicazioni in excel, ci sono davvero tante cose interessanti e diverse di queste te le ho già rubate per applicarle ai miei lavori. E' un file questo da tenere sempre a portata di mano per chi ha intenzione di lavorare in VBA. Per me è stato fondamentale seguire i ragionamenti che hai fatto ogni qualvolta si presentava un problema, hai reso una cosa difficile alla portata di tutti in modo semplice. Complimenti. Un'ultima osservazione riguardo alla "Sub Workbook_Open()": Inserendo la riga "Application.Visible = False" all'inizio si nascondono anche gli altri file eventualmente già aperti. Ho risolto creando un altro Foglio che ho chiamato Home con il solo titolo del progetto e poi ho modificato il codice in questo modo: Private Sub Workbook_Open() ShClienti.Visible = xlSheetVeryHidden shOrdini.Visible = xlSheetVeryHidden shMovimenti.Visible = xlSheetVeryHidden shMagazzino.Visible = xlSheetVeryHidden If Application.Workbooks.Count > 1 Then MsgBox "Attenzione! Non è possibile aprire il Gestionale se ci sono altri progetti excel aperti!", vbCritical, "Accesso negato" ThisWorkbook.Save ThisWorkbook.Close Exit Sub Else Application.Visible = False frmHomepage.Show End If End Sub Grazie per il lavoro svolto e inutile dirti che ne attendiamo un altro il prima possibile ;)
@NickTheGeek3 жыл бұрын
Ciao Sandro, grazie per i complimenti, con Excel mi fermo qui.
@esqueleto34623 жыл бұрын
@@NickTheGeek Porterai altri gameplay in futuro?Ci mancano😭
@NickTheGeek3 жыл бұрын
@@esqueleto3462 Ciao, mi dispiace ma non credo che ne farò altri
@santocolosi8896 Жыл бұрын
Ciao Nick. Ho seguito con il massimo interesse tutti i tuoi video su questo bel progetto gestionale e non posso fare a meno di inviarti i miei più sinceri complimenti! Sto testando il programma per fini personali. Comprendo che il progetto risale a qualche anno fa e, probabilmente non segui più i commenti. Mi si è presentato un problema con l'esportazione .pdf. Ho visto che nel tuo pc funziona perfettamente. Premetto che Utilizzo excel di MSOffice 2007 enterprise, installato su win10 a 64 bit e a sua volta installato Microsoft windows desktop runtime 6.0.21(x86) Con esattezza non trovo problemi nell'esportazione .xlsx, ma all'atto di esportare in .pdf mi da il seguente errore: Errore di runtime '5': Chiamata di routine o argomento non valido L'errore lo da in questa sub: Private Sub cmdEsportaPdf_Click() risposta_esporta_pdf = MsgBox("Il contenuto della lista sarà esportato anche in formato Excel. Vuoi proseguire?", vbYesNo) If risposta_esporta_pdf = vbYes Then esporta_excel percorso_pdf = percorso_cartella_di_esportazione & "Magazzino " & Format(Date, "yyyymmdd") & ".pdf" wb.ExportAsFixedFormat Type:=xlTypePDF, fileName:=percorso_pdf '
@NickTheGeek Жыл бұрын
Ciao, grazie per i complimenti. Per il primo problema ti chiedo: in quale riga della sub ti dà l'errore? Succede solo in quella form mentre nelle altre funziona? Per il secondo problema: se ho capito bene quindi vorresti scegliere un prodotto dalla cboVediProdotti e quindi vedere nella listbox solo le righe di quel prodotto?
@santocolosi8896 Жыл бұрын
Ciao, grazie della risposta, l'errore me lo evidenzia in questa istruzione: ================================================================= wb.ExportAsFixedFormat Type:=xlTypePDF, fileName:=percorso_pdf ================================================================= evidenzia in giallo questa riga, me lo da cmq in qualunque userform dotata di pulsante che richiama la sub e permette di esportare in .pdf. Per il secondo aiuto, in pratica dalla cboVediProdotti vorrei pescare alcuni prodotti dal magazzino e trascriverli in listbox e poi dalla listbox trasferirli in foglio movimenti, poichè dalla list box vorrei gestire ,vendite carichi scarichi etc. Grazie mille per la gentilezza.
@NickTheGeek Жыл бұрын
Per il primo problema, potrebbe dipendere da come hai valorizzato la variabile wb, che però si trova nella subroutine esporta_excel (almeno secondo il mio progetto); puoi per favore incollare qui tutta la sub esporta_excel che hai nel tuo file? O comunque la subroutine in cui hai la linea: Set wb = .... Per il secondo problema, potresti fare riferimento al video 113 a partire dal minuto 6:30 circa, in cui spiego come utilizzare la combobox cboVediProdotti; in quel caso ho mostrato categorie di prodotti, quindi quelli attivi e quelli non attivi, che puoi filtrare semplicemente controllando il valore della colonna "Attivo" (S o N); se invece vuoi filtrare per descrizione del prodotto, anziché usare le linee: ElseIf cboVediProdotti.Value = "Solo attivi" Then If Cells(i, 7) = "S" (per cercare solo quelli attivi) potresti usare queste linee: ElseIf cboVediProdotti.Value = "prodotto1" Then If Cells(i, 2) = "prodotto1" (per cercare e quindi scrivere nella listbox solo le righe con il prodotto1) Se la prima If è quella con "Tutti", poi dovresti quindi usare tante ElseIf quante sono le righe presenti nella combobox (cioè quante sono le descrizioni prodotto). In alternativa potresti usare un Select Case (video 19). Sto andando a occhio perché non riesco a verificare direttamente.
@annaritacarpineta512711 ай бұрын
Devi disattivare le Macro per poter aprire il file e entrare nell'Editor fai le varie modifiche e riattivi le macro prima di salvare, poi chiudi il File . E al riavvio vedrai solo la Home Page.