Corso VBA Excel ITA - 6 - Activate e Select

  Рет қаралды 23,064

NickTheGeek

NickTheGeek

Күн бұрын

Пікірлер: 64
@NickTheGeek
@NickTheGeek 7 жыл бұрын
Scusate per l'audio
@lucabuzzi455
@lucabuzzi455 4 жыл бұрын
Video veramente molto utili e spiegati in modo chiaro, complimenti davvero! Grazie.
@NickTheGeek
@NickTheGeek 4 жыл бұрын
Grazie a te per i complimenti e per il commento.
@andreagiovannini2858
@andreagiovannini2858 6 жыл бұрын
Grazie NickTheGeek, anche su questo video sei stato chiaro anche a seguito dei numerosi esempi proposti per mostrare i diversi comportamenti dei metodi activate e select.
@NickTheGeek
@NickTheGeek 6 жыл бұрын
Grazie a te Andrea :)
@gionax
@gionax 4 жыл бұрын
bravo e chiaro nell'esposizione
@NickTheGeek
@NickTheGeek 4 жыл бұрын
Grazie!
@nicksan7263
@nicksan7263 Жыл бұрын
Tutto chiaro. Grazie
@NickTheGeek
@NickTheGeek Жыл бұрын
Ottimo, grazie a te per il commento
@mircobonaso5638
@mircobonaso5638 3 жыл бұрын
Complimenti!!
@NickTheGeek
@NickTheGeek 3 жыл бұрын
Grazie!
@carlobinder8974
@carlobinder8974 5 жыл бұрын
Ciao Nicola, complimenti per il corso, lo sto seguendo ed è chiarissimo. Ti faccio una domanda se posso: ti è mai capitato che una macro/sub, nelle stesse identiche condizioni di partenza (intendo file aperti, celle ecc.) funzioni eseguendo con F5 ma NON con il tasto di scelta rapida cui ho associato la macro? In particolare, c'è un passaggio da un file all'altro, quindi controllerò bene il codice di attivazioni varie; però è strano che, stesso punto di partenza, lancio f5 e va; lancio ctrl+maiusc+A e si blocca nel passaggio tra i file...? Grazie mille!
@NickTheGeek
@NickTheGeek 5 жыл бұрын
Ciao Carlo, grazie per i complimenti. Non mi ricordo che mi sia mai successo, ma devo dire che raramente uso tasti di scelta rapida; può darsi (ma mi sembrerebbe comunque strano) che l'operazione di passaggio all'altro file vada in qualche modo in contrasto con la combinazione di tasti che hai scelto; prova a cambiare combinazione (soprattutto prova a togliere il maiusc), oppure anche a cambiare nome della macro.
@carlobinder8974
@carlobinder8974 5 жыл бұрын
@@NickTheGeek grazie mille a te per la risposta velocissima!! Oggi o comunque in questi giorni dovrei ritestare il tutto, proverò certamente coi suggerimenti che mi hai detto (e soprattutto verificherò per bene l'attivazione di file e fogli, ho riguardato il video attentamente così da essere certo di operare in modo corretto). Nel caso, posso eventualmente condividerti il codice, che magari ti salta all'occhio qualche mio macro errore operativo? Grazie mille di nuovo, a presto! Carlo
@NickTheGeek
@NickTheGeek 5 жыл бұрын
Se con F5 funziona non dovrebbero esserci problemi nel codice, ma se anche con le modifiche non funziona ancora puoi senz'altro incollarlo qui in un commento, ci dò un'occhiata.
@carlobinder8974
@carlobinder8974 5 жыл бұрын
@@NickTheGeek grazie mille, in realtà con il tuo suggerimento di cambiare lettera è andato tutto a buon fine; ed inoltre, come mi avevi anticipato tu, la funzionalità dei tasti di scelta rapida non mi è apparsa estremamente utile, piuttosto eventualmente l'inserimento di una "forma" che fungesse da pulsante cui associare la macro, cosa che in effetti funziona perfettamente. Grazie mille ancora, ci risentiamo per eventuali altri confronti lungo il prosieguo del corso. Carlo Ps. Non hai nulla, o non hai in mente magari qualcosa, riguardo la programmazione sql (o nel caso suggerimenti da darmi in questa direzione)? ;) Grazie!!!
@NickTheGeek
@NickTheGeek 5 жыл бұрын
Ottimo, in effetti il pulsante è la scelta migliore. Ho utilizzato sql diversi anni fa e solo marginalmente, quindi non mi sentirei in grado di fare video sull'argomento, mi dispiace; sono sicuro che su youtube puoi trovare diversi corsi al riguardo; se ci sono altre domande su excel ovviamente non esitare :)
@Max_sbk12
@Max_sbk12 5 жыл бұрын
8:43 perchè utilizzi Activate per un intervallo di celle? Non si utilizzava Select per più celle e Activate per una sola?
@NickTheGeek
@NickTheGeek 5 жыл бұрын
Lo uso per mostrare la differenza tra Activate e Select, e perché bisogna fare attenzione a come usarli
@Max_sbk12
@Max_sbk12 5 жыл бұрын
@@NickTheGeek Appunto, avevo capito che Activate si usasse ESCLUSIVAMENTE per indicare 1 cella e MAI per più celle o un intervallo, come hai fatto in questo esempio in cui mi sembra funzionare ugualmente?
@NickTheGeek
@NickTheGeek 5 жыл бұрын
Non so se ho mai detto esplicitamente che Activate debba essere usato solo per le celle singole, può essere, ma sicuramente intendevo darlo come consiglio, non come limite informatico. Infatti puoi usarlo anche negli intervalli ma Select è molto più utile, anche perché non credo che esista un "ActiveRange" come corrispondente dell'ActiveCell che si usa normalmente per indicare la singola cella attiva; per gli intervalli si usa sempre Selection (quindi prima devi aver usato Select sull'intervallo)
@Max_sbk12
@Max_sbk12 5 жыл бұрын
@@NickTheGeek Lo dici a 2:40 e poi a 4:00 ... comunque grazie della gentilezza! SEI BRAVISSIMO
@NickTheGeek
@NickTheGeek 5 жыл бұрын
la differenza è che in quei due momenti parlavo dell'Activate su più fogli (non puoi farlo), mentre al minuto 8:43 mostravo l'Activate sugli intervalli (puoi farlo, ma devi stare attento agli effetti)
@ricercacostantealessandra
@ricercacostantealessandra 5 жыл бұрын
Ciao Nick, forse ti chiedo un aiuto impossibile, ma io confido comunque in qualche tuo ragguaglio, perchè non riesco proprio a venirne a capo e non trovo nessun esempio che faccia al mio caso. Ti spiego: - ho delle coppie di numeri; - ciascuna coppia ha una sua specifica corrispondenza con un'altra coppia; - con un comando activex, vorrei poter richiamare la coppia corrispondente dopo aver scritto i due numeri in due celle distinte, una a fianco all'altra, mentre nelle celle sottostanti, vorrei venisse scritto il risultato. A modo mio avrei anche trovato un'alternativa, ma è farraginosa e richiede un sacco di tempo per essere completata. Ho anche provato a registrare una macro ... funziona con la prima coppia di numeri da cercare, poi se ne inserisco altri, si impalla. Se puoi, vorrei sapere come posso impostare il codice per continuare a cercare tutti i numeri della mia tabella. In sintesi: - se in A1 e B1 scrivo i 2 numeri dei quali cercare la corrispondenza - in A2 e B2 vorrei ottenere il risultato attraverso l'uso di un pulsante. Sempre partendo da A1 e B1, vorrei poter continuare ad inserire altri numeri per cercare le altre corrispondenze. Grazie e complimenti per i tuoi video. Ciao
@NickTheGeek
@NickTheGeek 5 жыл бұрын
Ciao, grazie per i complimenti. Alcune domande: le corrispondenze tra coppie sono scritte da qualche parte, ad esempio in un altro foglio Excel dello stesso file? Se non è così, è possibile scriverle oppure creerebbe problemi? La tua alternativa prevede una serie di verifiche con IF? Di quante coppie stiamo parlando? I numeri devi sempre scriverli in A1 e B1 sovrascrivendo quelli precedenti?
@ricercacostantealessandra
@ricercacostantealessandra 5 жыл бұрын
@@NickTheGeek Ciao, grazie a te anche per la celerità. Ho creato delle tabelle in un altro foglio dello stesso file e vorrei tenerle separate dal foglio nel quale devo fare la ricerca. Sì, i numeri li devo scrivere sempre in A1 e B1 o comunque sempre nelle stesse due celle. Avevo iniziato a creare dei pulsanti utilizzando le forme rettangolari di excel ed assegnando a ciascuno una macro ... se ad esempio ho bisogno di sapere a quali numeri corrisponde la coppia 10 - 17, registro la macro con il risultato e creo il pulsante 10 - 17, poi mi basta cliccare quello per risalire al dato. Questo metodo funziona, ma è snervante e mi riempe il foglio di tantissimi pulsanti. Se si potesse istruire excel con un codice vba e dirgli: quando scrivo questi due numeri in queste due celle, dammi come risultato la tal coppia. Non so se sono riuscita a spiegarmi ... ho provato anche con il CERCA, con il CERCA VERT e anche con altre formule, ma niente da fare, non riesco ad automatizzare. Hai qualche idea? Mi sono capita? :)
@NickTheGeek
@NickTheGeek 5 жыл бұрын
Un'altra cosa: com'è strutturata la tabella che contiene le corrispondenze delle coppie? Ad esempio, hai la coppia di partenza in A1 e B1, e la corrispondente coppia di arrivo in C1 e D1?
@ricercacostantealessandra
@ricercacostantealessandra 5 жыл бұрын
@@NickTheGeek L' ho strutturata con 18 colonne (le categorie principali di numeri sono 18) : da A1 fino a T1 le coppie principali, sotto i relativi numeri
@NickTheGeek
@NickTheGeek 5 жыл бұрын
sono un po' confuso: quindi le coppie iniziali sono 9? le colonne da A a T però sono 20, non 18
@carlodugo3845
@carlodugo3845 4 жыл бұрын
ciao. per caso hai degli esercizi per ogni lezione? o per caso una raccolta di esercizi per dummies da consigliare? grazie
@NickTheGeek
@NickTheGeek 4 жыл бұрын
Ciao, no mi dispiace non saprei come aiutarti, non conosco raccolte di esercizi
@andreagiovannini2858
@andreagiovannini2858 6 жыл бұрын
Ciao NickTheGeek, ho scritto alcune righe di codice di prova a seguito di tuo tutorial: Sheets(Array(1, 2)).Select Cells.ClearContents Range("d5:g10").Select Selection = "vba" Prima di far partire la sub riga per riga con F8, attivo il foglio3, quindi verifico che: come richiesto mi attiva i fogli 1 e 2 cancella il contenuto solo del foglio1 (perché?) seleziona l’intervallo compreso tra le celle d5 e g10 su entrambi i fogli scrive “vba” in tutte le celle della selezione in entrambi i fogli. Non capisco perché il codice della riga 2 lo esegue solo sul foglio 1?!? Scusa per la lunghezza del messaggio e grazie!
@NickTheGeek
@NickTheGeek 6 жыл бұрын
Ciao Andrea, a me funziona sdoppiando la riga "Cells.ClearContents" così: Cells.Select Selection.ClearContents Non so perché si comporti così, ma probabilmente il metodo ClearContents applicato all'oggetto Cells lavora solo sul foglio attivo (che per definizione può essere solo uno) anche se ne hai selezionati di più; mentre se lo stesso metodo viene applicato a una selezione di celle allora funziona anche su più fogli.
@andreagiovannini2858
@andreagiovannini2858 6 жыл бұрын
Grazie NickTheGeek per la tempestività della tua risposta!
@NickTheGeek
@NickTheGeek 6 жыл бұрын
Di nulla, se c'è bisogno chiedi pure :)
@silvioiozzia7650
@silvioiozzia7650 5 жыл бұрын
Ciao Nick, grazie mille per questo corso!!! lo sto trovando utilissimo. Sto facendo riempire delle tabelle excel ad apertura del file. Il problema e che mi fa vedere tutti i passaggi che fa. Non c'è un modo per farglielo fare in background mentre visualizzo un foglio diverso da quello su cui deve operare? Grazie!
@NickTheGeek
@NickTheGeek 5 жыл бұрын
Ciao Silvio, grazie a te per il commento. Se il foglio dove avvengono le operazioni è il Foglio1, allora all'inizio attiva il Foglio2: Sheets("Foglio2").Activate Quindi, per evitare di vedere tutti i passaggi con annesso sfarfallio del monitor, scrivi questa istruzione: Application.ScreenUpdating = False Tieni presente che da questo punto in poi devi sempre specificare che le operazioni devono avvenire sul Foglio1, quindi se ora hai: Cells(1,1)="VBA" allora devi modificare in: Sheets("Foglio1").Cells(1,1)="VBA" Non so che tipo di operazioni devi fare, ma se fossero tutte del tipo qui sopra, allora potresti usare la struttura With... End With: With Sheets("Foglio1") .Cells(1,1)="VBA" .Cells(2,1)="VBA2" etc.... End With Per maggiori informazioni su questa sintassi, guarda anche il video 42 di questa stessa playlist. Tieni anche presente che durante le operazioni di VBA non puoi comunque utilizzare il foglio.
@MiticoMazz
@MiticoMazz 4 жыл бұрын
Nick ci indichi qualche sito dove trovare degli esercizi da fare sulle lezioni seguite?
@NickTheGeek
@NickTheGeek 4 жыл бұрын
Mi dispiace ma non ne conosco
@petrus_tn
@petrus_tn 4 жыл бұрын
Grazie Nick. Tutto molto, molto chiaro. Ho solo una curiosità: in questo video abbiamo in parte lavorato con due fogli selezionati. Dunque, le operazioni impostate sono state registrate sia sul forglio 1, sia sul foglio 2. Tuttavia noto che questo è avvenuto solo quando è stato assegnato uno stesso contenuto ad un intervallo di celle con due righe di comando - ad esempio - 'Range ("A1:B3") .Select' e poi 'Selection = "VBA" - mentre ciò non è avvenuto quando ad un altro intervallo è stato assegnato direttamente il contenuto - ad esempio 'Range("A5:B7") = "VBA", operazione che ha avuto successo solo sulla pagina attiva. Da quanto ho potuto vedere, nche il metodo 'ClearContents' associato a tutte le celle si comporta in questo modo, concellando il contenuto solo della cella attiva. Come mai? Grazie ancora per questi efficaci tutorial.
@NickTheGeek
@NickTheGeek 4 жыл бұрын
Ciao Stefano, grazie. Non saprei la motivazione, ma ti confermo quello che hai notato. La selezione, e quindi anche le successive operazioni eseguite sulla selezione, funziona su tutti i fogli attivi. Le altre operazioni no (ad esempio scrittura diretta e ClearContents). Quindi per eseguire il ClearContents su entrambi i fogli dovresti scrivere due righe: Cells.Select Selection.ClearContents
@robertobraicovick6867
@robertobraicovick6867 4 жыл бұрын
Grazie!
@renzomarchi6960
@renzomarchi6960 4 жыл бұрын
Ciao, sono un principiante ma a me nel VBA non funzionano né il tasto F5 né il tasto F8. Cosa devo fare perché funzionino, grazie
@NickTheGeek
@NickTheGeek 4 жыл бұрын
Ciao Renzo, probabilmente nel tuo computer quei tasti sono impostati con scopi specifici (ad esempio se sei su un Mac o su una macchina virtuale). In ogni caso , anche fossi su Windows, bisognerebbe capire come si impostano nel computer le funzionalità dei tasti funzione.
@robertobraicovick6867
@robertobraicovick6867 6 жыл бұрын
Grazie! Nik visto che mi sei stato di grande aiuto ne approfitto. Avendo installato Parallels sul Mac quando premo F8 per il Debug mi apre iTunes e questo vale anche per F11... non c'è modo di abilitare i tasti per Windows10 anziché Mac? … Non diventare matto a rispondere se ti causa un problema (posso continuare ancora così) Ciao e grazie! :)
@NickTheGeek
@NickTheGeek 6 жыл бұрын
Forse puoi provare così: vai sulle Preferenze di Sistema dal Mac, scegli l'icona della tastiera e poi seleziona la casella "Utilizza i tasti F1, F2, ecc. come tasti funzione standard". Questo di sicuro disabilita le funzionalità specifiche del Mac, ma non so se poi su Parallels si traduce nelle normali funzionalità di Windows. Fammi sapere.
@robertobraicovick6867
@robertobraicovick6867 6 жыл бұрын
@@NickTheGeek Sono senza parole! Fantastico. Adesso posso continuare le lezioni senza il tarlo dei tasti funzione. :)
@NickTheGeek
@NickTheGeek 6 жыл бұрын
ottimo :)
@MassimilianoEsposito75
@MassimilianoEsposito75 7 жыл бұрын
Ciao Nick i tuoi video sono sempre molto molto interessanti! Ho una domanda sulla selezione. Come posso selezionare in un intervallo di celle di una colonna (B90:B130) in cui ci sono formule, solo alcune restituiscono un nome e cognome, selezionare solo le celle col risultato escludendo le altre? Mi sai dare un indicazione?
@NickTheGeek
@NickTheGeek 7 жыл бұрын
Ciao Massimiliano, grazie :) Se le celle che non restituiscono un nome e cognome sono vuote (cioè la formula non dà risultato), prova con queste 3 righe: Intersect(Range("b90:b130").EntireRow, Range("C:C")) = Evaluate("IF(" & Range("b90:b130").Address & "="""","""",""x"")") Intersect(Range("C:C").SpecialCells(xlConstants).EntireRow, Range("B:B")).Select Range("C:C").Clear 1) la prima riga considera l'intersezione tra tutte le righe dell'intervallo e la colonna C (in pratica le celle immediatamente a destra dell'intervallo): se la cella dell'intervallo è vuota (ad esempio B90), la corrispondente cella dell'intersezione (ad esempio C90) viene lasciata vuota, altrimenti viene scritto "x" 2) la seconda riga seleziona l'intersezione tra le righe contenenti la "x" e la colonna B (che è il risultato che ti interessa) 3) la terza riga pulisce la colonna C Ho presupposto che la colonna C sia vuota, ma nel tuo caso potrebbe anche non esserlo, quindi eventualmente sostituisci Range("C:C") con qualsiasi colonna vuota del tuo foglio. Fammi sapere se ci sono problemi
@MassimilianoEsposito75
@MassimilianoEsposito75 7 жыл бұрын
NickTheGeek grazie mille sei stato velocissimo e grazie per l'impegno. Stasera provo e ti faccio sapere...
@MassimilianoEsposito75
@MassimilianoEsposito75 7 жыл бұрын
Allora Nick ho provato e funziona alla grande! Sto facendo alcune modifiche per adattarlo al mio foglio, ma va bene! Ho una domanda ancora a cui non riesco a dare risposta. La private sub che contiene le tue istruzioni vorrei collegarla ad un evento, quello di apertura di un elenco di convalida di una cella che si trova in un altro foglio. Vorrei che comunque questa sub, funzioni in "background" anche se il foglio attivo è un altro. Come posso fare?
@NickTheGeek
@NickTheGeek 7 жыл бұрын
Ottimo :) per quanto riguarda la tua domanda, non credo che si possa far intercettare l'evento dell'apertura dell'elenco di convalida, andrebbe bene lo stesso se la macro partisse quando viene selezionato un valore da quell'elenco?
@giuseppetramonta6252
@giuseppetramonta6252 Жыл бұрын
SALVE potevi parlare di copia e incolla
@NickTheGeek
@NickTheGeek Жыл бұрын
Ciao. Per replicare in VBA funzionalità che già usi nell'Excel "normale", puoi registrare una macro come spiegato nel video 2 di questa playlist.
@frenksart8066
@frenksart8066 7 жыл бұрын
Giustamente selact ti permette di selezionare più oggetti mente activate ti permette di attivare un oggetto e ne puoi attivare uno solo.
@NickTheGeek
@NickTheGeek 7 жыл бұрын
esatto
@francescosedita6938
@francescosedita6938 4 жыл бұрын
troppi esempi nella stessa lezione
@NickTheGeek
@NickTheGeek 4 жыл бұрын
Possibile, ma nulla vieta di fermare il video e riprenderlo in seguito.
Corso VBA Excel ITA - 7 - Riferimenti assoluti e relativi
13:29
NickTheGeek
Рет қаралды 15 М.
Corso VBA Excel ITA - 5 - Oggetti, proprietà e metodi
21:28
NickTheGeek
Рет қаралды 32 М.
黑天使被操控了#short #angel #clown
00:40
Super Beauty team
Рет қаралды 61 МЛН
Don’t Choose The Wrong Box 😱
00:41
Topper Guild
Рет қаралды 62 МЛН
“Don’t stop the chances.”
00:44
ISSEI / いっせい
Рет қаралды 62 МЛН
Corso VBA Excel ITA - 9 - Variabili (parte 1)
23:13
NickTheGeek
Рет қаралды 17 М.
Corso VBA Excel ITA - 3 - Celle
24:10
NickTheGeek
Рет қаралды 39 М.
Corso VBA Excel ITA - 4 - Intervalli
19:46
NickTheGeek
Рет қаралды 30 М.
Corso VBA Excel ITA - 11 - Variabili (parte 3)
21:26
NickTheGeek
Рет қаралды 13 М.
Corso VBA Excel ITA - 8 - Commenti e finestra immediata
18:07
NickTheGeek
Рет қаралды 13 М.
Corso VBA Excel ITA - 10 - Variabili (parte 2)
21:14
NickTheGeek
Рет қаралды 13 М.
Corso VBA Excel ITA - 20 - Ciclo For... Next
24:31
NickTheGeek
Рет қаралды 16 М.
Corso VBA Excel ITA - 17 - Condizioni (parte 2)
24:10
NickTheGeek
Рет қаралды 10 М.
Corso VBA Excel ITA - 2 - Macro
16:25
NickTheGeek
Рет қаралды 44 М.
Corso VBA Excel ITA - 28 - Caso reale (esercizio)
30:49
NickTheGeek
Рет қаралды 8 М.