Come mi hanno fatto notare nei commenti manca un pezzettino fondamentale, in mancanza del quale non va il copia/incolla nel foglio dove avete attivato questa funzionalità. Nel capitolo a 0:15:27 | FORZARE IL RICALCOLO DEL FOGLIO CON VBA, al posto del semplice "application.calculate" inserite questa riga: If Application.CutCopyMode = False Then Application.Calculate
Ottima soluzione, grazie per tutti i video. Avrei da chiedere, visto che "excel ha sempre ragione", perchè in questo caso non funziona "If Not Application.CutCopyMode Then Application.Calculate" ... cosa cè di strano, cosa non ho capito?
@@gasparealesi3171 Perchè Application.CutCopyMode non restituisce un valore Boolean bensi un valore "XlCutCopyMode" numerico. quando non ci sono operazioni di Cut&Copy in corso Application.CutCopyMode restituisce 0 (Application.CutCopyMode = False) restituisce True, (Not Application.CutCopyMode) restituisce -1, perchè Not 0 = -1, cioè True. Ma se è in corso una operazione di copia (Application.CutCopyMode = False) restituisce False, (Not Application.CutCopyMode) restituisce -2 cioè True. Quando si valuta un valore numerico al livello Booleano, qualsiasi valore diverso da zero è considerato Vero.
Ottimo! Grazie utilissimo, in rete si trovano al 99% solo soluzioni che neutralizzano le eventuali formattazioni applicate al foglio che non possono essere ripristinate automaticamente, invece con questo sistema è tutto reversibile ;-)
Grazie, era un po' di tempo che cercavo una funzionalità del genere. Rispetto a tutte quelle che ho trovato in rete, questa mi permette di conservare il riempinento delle celle del mio foglio di lavoro. Ancora grazie per questo video che spiega come costruirsi una funzionalità comoda, semplice e potente.
Ciao ! Questo genere di funzionalità le vedrei bene già incluse nel software base, magari come una funzionalità facoltativa è attivabile a parte. La proverò sicuramente perché è indubbiamente utile nella lettura di grosse tabelle. Verifico poi le prestazioni su fogli complessi con formule dinamiche, power query etc. Verificando se questa forzatura nel ricalcolo non penalizzi le prestazioni. Grazie mille come sempre per i tuoi video !!
Concordo sull'inclusione nel software base! Questa tecnica rallenta sicuramente dei file già complicati di loro, è indicata per tabelle dati semplici. In caso di file più complessi consiglio una soluzione più complessa con VBA che aggiunge dinamicamente la formattazione condizionale solo per la riga interessata di volta in volta. Mi segno di farci un video a riguardo!
@@macrobraglia si ottima idea. Ma credo che utilizzando il VBA con delle routine perderemmo la funzione di annulare le digitazioni e altre modifiche fatte in precedenza con la classica funzionalità undo
Ciao Marco, grazie mille per il tuo video! Io ho diverse macro che ho convertito in plug in (.xlam). Mi chiedevo se era possibile aggiungere anche questa
Год назад+2
Ciao ho seguito con attenzione questo tutorial, ma la macro per evidenziare di un colore ogni qualvolta di seleziona una riga non funziona. Mi aiuti? Grazie.
Ciao Marco, grazie, si può effettuare la stessa formattazione condizionale combinata con le Colonne? quindi autoevidenziando Riga e Colonna? Grazie mille.
Ciao Marco, questa soluzione è una valida alternativa all'uso di codice VBA per evidenziare l'intera riga della cella selezionata. Aggiungendo poi application.Calculate risolve il tutto. Abbimo però una criticità. Ad ogni cambio di selezione della cella excel ricalcola tutte le formule e le formattazioni condizionali presenti nel foglio e questo genera rallentamenti nello spostamento del cursore e in alcuni casi nell'applicazione delle formattazioni. Esiste un metodo per far aggiornare solo la funzione della formattaizone condizionale che abbiamo inserito e che hai mostrato nel video? in alternativa c'è una soluzione per evitare questo problema di rallentamento sovraccarico dei ricalcoli che chiediamo al foglio?
Grazie e comodo per file e DB grossi, l'intervallo di applicazione del comando in "formattazione condizionata" funziona anche indicando una tabella? Saluti
Ciao, sì funziona nel senso che puoi scrivere il nome di una tabella nell'intervallo di applicazione della regola. MA appena la applichi confermandola questo verrà trasformato in un riferimento assoluto normale, quindi perdi la dinamicità
ottima spiegazione... se si volesse attivare e disattivare questa funzionalità? come si può fare? -- magari prima della formula si può aggiungere un se(vero), e se (falso ) ?? Grazie
Ciao Marco, sono un completo profano di excel e vorrei chiederti come posso evidenziare allo stesso modo due righe in un solo colpo. Grazie e complimenti per le chiare spiegazioni
buongiorno, sono alle prime fasi, tutto molto interessante, ma imparare le logiche di ragionamento excel non è facile ....comunque grazie, ti seguo e mi sono iscritto!!!! GRAZIE
Ho notato che se sposti una cella o intervallo di celle si scombina la formattazione condizionale applicata con formula. Devo per forza copiare e incollare i contenuti di una cella per lo spostamento? Grazie
Complimenti "Macro"Braglia :) avrei pero' una question....se il mio foglio ha gia' una formattazione condizionale applicata come posso evidenziare riga cella attiva senza che si modifichi pero' la formattazione gia' presente?! non riesco...se puoi, grazie in anticipo
Ciao Enzo, nessun disturbo! In effetti avrei potuto farlo di due minuti MA non avresti imparato e soprattutto CAPITO tutti i passaggi necessari. Una volta che li hai capiti applicarli è velocissimo, in questo senso il metodo di questo video è facile e veloce
mamma mia che spettacolo! funzione troppo carina e comoda. grazie mille per il video solo una domanda, in un file con una decina di fogli quando entro in VBA per inserire il comando mi dice "MEMORIA ESAURITA" e non mi fa fare nulla.....da cosa dipende secondo te? ultima cosa, da quando ho messo questo formula non riesco a fare neanche un copia e incolla è normale?
Ciao Marco, ho utilizzato il tuo sistema per evidenziare la riga su cui sto lavorando (ho un foglio con oltre 5000 righe e circa 30 colonne per cui mi è molto comodo questo sistema. Prima dovevo schiacciare Maiusc+spazio per evidenziare la riga in cui ero. Purtroppo non mi funziona più il copia e inserisci righe. Per comodità spesso copio una o più righe e le inserisco come righe copiate in un'altra parte del foglio. Cioè: seleziono una o più righe e poi, col tasto destro del mouse clicco su copia, mi sposto nella posizione che mi interessa e cliccando ancora col tasto destro del mouse mi appariva il menu "inserisci celle copiate" ed il gioco era fatto. Poi sistemavo alcune formule che dovevano avere riferimenti diversi e tuto filava liscio. Ora devo prima inserire gli spazi vuoti che mi serviranno, poi andare a selezionare le righe e copiarle nella posizione. Quando devo far scorrere la pagina di qualche centinaio di righe la cosa è un po' macchinosa. C'è qualche soluzione al problema? Grazie
Per limitare l'evidenziazione alle sole celle interne ad un range definito e solo quando si clicca all'interno della tabella stessa basta aggiungere al foglio di lavoro il seguente codice. Oltre ovviamente alla formattazione condizionale trattata in questo video, per la quale ringrazio l'autore. Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'Database è il nome del range definito entro il quale si vuole evidenziare la riga SelectRecord Target, "Database" End Sub Sub SelectRecord(Target As Range, RangeName As String) With Range(RangeName) If Between(Target.Row, .Cells(1).Row + 1, .Rows.Count + .Cells(1).Row - 1) And _ Between(Target.Column, .Cells(, 1).Column, .Columns.Count + .Cells(, 1).Column - 1) And _ Application.CutCopyMode = False Then Application.Calculate End With End Sub Function Between(Num, Min, Max) As Boolean Between = (Num >= Min And Num
non posso forzare il ricalcolo perchè quando mi sposto su worksheet restituisce questo messaggio di errore: La variabile utilizza un tipo di automazione non supportato in Visual Basic. dove sbaglio?
Bell'esempio, mi piace. Segnalo che il ricalcolo si forza anche premendo F9, che è fatto apposta. (Maiusc+F9 ricalcola il solo foglio corrente, F9 tutti)
Ciao sto impazzendo, come faccio a colorare delle colonne in base alla formattazione condizionale che ho fatto in base al fatto se sia domenica? Spero di essermi spiegato bene grazie
Molto carino come effetto.... Quanto all'utilità però, e più o meno nulla... Se si vuole evidenziare una riga o una colonna lo si può fare comodamente dalle rispettive intestazioni (anche combinate tenendo premuto ctrl)... Inoltre con la macro che ricalcola costantemente si perde la possibilità di eseguire il copia e incolla. 🖖
Nel commento pinnato c'è la soluzione al problema del copia incolla. Per quanto riguarda l'utilità, dipende tutto dall'utilizzo del file in questione e sono preferenze personali
Ciao, interessantissimo, ma una curiosità. In un file con una grossa mole di dati con vari cerca vert e altro, la formattazione condizionale non rallenta l’esecuzioni delle formule? Grazie ☺️
Ciao, sì la formattazione condizionale rallenta il ricalcolo del foglio quindi se il database è molto esteso si potrebbe vedere. In quel caso bisognerebbe passare ad una soluzione più articolata sempre con il codice vba per velocizzare tutto, ma ovviamente non è semplice da applicare come quella mostrata in questo video.
una domanda. Ho incollato in excel tipo 500 domande di un concorso ma vorrei mettere in grassetto tutte le domande così all'occhio mi risulta più facile. Ho pensato che in excel è possibile, ma in word è troppo lunga la cosa. penso che in Excel ci sia un modo con delle formule che riesce ad evidenziare le domande che sono numerate così 1)...2)... mentre le risposte hanno A) B) C) mi chiedevo è possibile secondo te fare una formula che mi evidenzi le righe con i numeri cioè le domande?? mi piacerebbe scoprirlo grazie infinite sei bravo come spieghi!!!
Ciao Cris, certo si può fare in vari modi, volendo anche tutto direttamente con la formattazione condizionale avanzata, ma se non sei pratico è un po' difficile da digerire all'inizio. Usando qualche passaggio in più, potresti prendere il primo carattere a sinistra di ogni cella con la formula VAL.NUMERO(SE.ERRORE(SINISTRA(cella;1)*1;"")), che ti restituirà VERO se il primo carattere è un numero e FALSO altrimenti. Poi usi questa per evidenziare la riga in grassetto 😉
@@macrobraglia però è complesso... io ho copiato un documento di word su excel, le domande sono numerate con parentesi con numero le risposte con le lettere e la parentesi. ho fatto la formula ma poi mi scrive sopra, devo inserire una colonna a sinistra? e per evidenziare i VERO come si fa??? adesso arriva il bello ahahha
@@cris85fly Devi aggiungere una colonna alla tua tabella dati e sistemare il riferimento nella formula. Per esempio: colonna A vuota, colonna B iniziano i tuoi dati, nella cella A1 scrivi =VAL.NUMERO(SE.ERRORE(SINISTRA(B1;1)*1;""))
Ciao, ho impostato la sub Selection_change per il ricalcolo su tutte le celle, ma vorrei che funzionasse solo all'interno di una tabella. Se impostate altre macro e impostato application.calculation sul foglio, vanno in errore. Grazie
Si può fare, ma dipende dal motivo...si potrebbe per esempio applicare la regola di formattazione condizionale con il vba solo per la riga interessata. Ma complicherebbe la parte di codice. Questo è il metodo più semplice che ci sia.
Ho seguito il video e grazie per tutto (inpiù ho abilitato le macro), però adesso mi succede che se copio una cella, non me la incolla e da il segnale acustico di quando c'è un errore. Perché mai?
Tutto chiaro, ma come si salva il file con attivazione delle macro? Le ho spuntate nelle impostazioni del file/opzioni/centro protezione/impostazioni/attiva le macro…. Ma non mi fa salvare il file con le modifiche 😢
Ho fatto tutto paro paro. Durante la VBA ho salvato e mi è uscito "selezionare un formato valido per visual basic" ho salvato con formato 'xlsm' ma non funziona... Qualcuno sa aiutarmi?
Ciao la formula funziona benissimo ed evidenzia la cella selezionata, ora vorrei capire come posso scrivere sulle celle mi spiego: colonna a b c d copio una riga da altro foglio ... ma non mi fa incollare ..unico modo per modificare è entrare in una riga e modificare un campo alla volta ... spero di essermi spiegato, c'e' una soluzione? grazie
io lo caccio così con vba Private Sub Worksheet_SelectionChange(ByVal Target As Range) Cells.Interior.ColorIndex = XLnome 'Target.EntireColumn.Interior.ColorIndex = 40 Target.EntireRow.Interior.ColorIndex = 20 Target.Interior.ColorIndex = XLnome End Sub
ciao, fatto tutti i passaggi e funziona ma...è normale che non funzioni piu il copia/incolla? se faccio copia e mi sposto sparisce anche il tratteggio nella cella copiata. se trascino la cella la formula viene copiata. cancellando apllication.calculate (quindi ripristinando il foglio di default) copia/incolla funziona
Ciao, hai ragione mi sono dimenticato un pezzo importantissimo! Al post del solo Application.calculate bisogna inserire queste due righe per far funzionare il copia/incolla: If Application.CutCopyMode = False Then Application.Calculate
@@macrobraglia ah ok, manca ancora la chiusura dell' IF, quindi lo script corretto finale sarà: If Application.CutCopyMode = False Then Application.Calculate End If End Sub grazie mille Marco, coi tuoi video si imparano sempre chicche molto utili
@@macrobraglia ok grazie. per completezza, se non glielo si specifica, perchè copy/paste non funziona piu? perchè verrà data la precedenza allo script che evidenzia la riga e quindi l'operazione copy, diventando un'operazione successiva, viene disabilitata?
@@passoborgo Non proprio. Il fatto è che il comando Application.calculate RESETTA la clipboard di Windows e quindi si perde il contenuto copiato. Inserendo il controllo con IF prima semplicemente gli diciamo che se trova qualcosa di copiato allora non fa il calculate e quindi non si perde nulla. Una soluzione più raffinata sarebbe quella di salvare il contenuto della clipboard da qualche parte (esempio una variabile variant o un foglio nascosto), fare il calculate, e poi ripristinare la clipboard, ma va oltre l'obiettivo di questo video 😉
Come mi hanno fatto notare nei commenti manca un pezzettino fondamentale, in mancanza del quale non va il copia/incolla nel foglio dove avete attivato questa funzionalità.
Nel capitolo a 0:15:27 | FORZARE IL RICALCOLO DEL FOGLIO CON VBA, al posto del semplice "application.calculate" inserite questa riga:
If Application.CutCopyMode = False Then Application.Calculate
Ottima soluzione, grazie per tutti i video. Avrei da chiedere, visto che "excel ha sempre ragione", perchè in questo caso non funziona "If Not Application.CutCopyMode Then Application.Calculate" ... cosa cè di strano, cosa non ho capito?
@@gasparealesi3171 Perchè Application.CutCopyMode non restituisce un valore Boolean bensi un valore "XlCutCopyMode" numerico.
quando non ci sono operazioni di Cut&Copy in corso Application.CutCopyMode restituisce 0
(Application.CutCopyMode = False) restituisce True, (Not Application.CutCopyMode) restituisce -1, perchè Not 0 = -1, cioè True.
Ma se è in corso una operazione di copia (Application.CutCopyMode = False) restituisce False, (Not Application.CutCopyMode) restituisce -2 cioè True.
Quando si valuta un valore numerico al livello Booleano, qualsiasi valore diverso da zero è considerato Vero.
Eccezionale!!!!!!! spiegazione, più facile di così, ecco perchè excel ha sempre ragione
grazie Giorgio!
Grazie mille, sono riuscito con semplicità a creare ed utilizzare questa utilissima funzione! Bravissimo!
Seguire le Tue indicazioni è sempre piacevole. Grazie.
molto utile ed è semplicissimo di come è stato illustrato
Grazie Antonio!
Che figataaaa
Bella scoperta e grazie per le tue lezioni
Intanto molte grazie per questo video che mi ha permesso di non utilizzare righelli e/o fogli di carta,... :) Da profano di Excel moltissime grazie
Davvero INTERESSANTE E CHIARO. GRAZIE
Grazie a te Franco!
Ottimo! Grazie utilissimo, in rete si trovano al 99% solo soluzioni che neutralizzano le eventuali formattazioni applicate al foglio che non possono essere ripristinate automaticamente, invece con questo sistema è tutto reversibile ;-)
Fantastica soluzione, grazie mille Marco!
Bravo Marco. Spiegazione chiarissima
Grazie Donato!
Grazie, era un po' di tempo che cercavo una funzionalità del genere. Rispetto a tutte quelle che ho trovato in rete, questa mi permette di conservare il riempinento delle celle del mio foglio di lavoro.
Ancora grazie per questo video che spiega come costruirsi una funzionalità comoda, semplice e potente.
Grande, davvero utile. Molto bravo e professionale
Grazie Alessandro!
Grazie mille Marco, mi hai risolto un problema. Sei stato chiarissimo!
Grande veramente utile.
bellissimo Marco, molto comodo per non perdere la vista quando hai una tabella con moltissime righe e colonne
Esattamente!
Sei un mito. Tanto da imparare. Spieghi benissimo
Grazie mille, mi fa piacere che ti piacciano i miei video!
Sei bravissimo
Bella spiegazione 👍👍
Ciao ! Questo genere di funzionalità le vedrei bene già incluse nel software base, magari come una funzionalità facoltativa è attivabile a parte. La proverò sicuramente perché è indubbiamente utile nella lettura di grosse tabelle. Verifico poi le prestazioni su fogli complessi con formule dinamiche, power query etc. Verificando se questa forzatura nel ricalcolo non penalizzi le prestazioni. Grazie mille come sempre per i tuoi video !!
Concordo sull'inclusione nel software base!
Questa tecnica rallenta sicuramente dei file già complicati di loro, è indicata per tabelle dati semplici.
In caso di file più complessi consiglio una soluzione più complessa con VBA che aggiunge dinamicamente la formattazione condizionale solo per la riga interessata di volta in volta.
Mi segno di farci un video a riguardo!
@@macrobraglia si ottima idea. Ma credo che utilizzando il VBA con delle routine perderemmo la funzione di annulare le digitazioni e altre modifiche fatte in precedenza con la classica funzionalità undo
@@macrobraglia Ciao, l'hai poi fatto il video in merito per fogli più pesant? Grazie!
Ciao Marco, grazie mille per il tuo video! Io ho diverse macro che ho convertito in plug in (.xlam). Mi chiedevo se era possibile aggiungere anche questa
Ciao ho seguito con attenzione questo tutorial, ma la macro per evidenziare di un colore ogni qualvolta di seleziona una riga non funziona. Mi aiuti? Grazie.
ciao, "non funziona" è abbastanza generico... Sicuro di aver seguito tutti i passaggi del video tutorial? Hai abilitato le macro sul file?
@@macrobraglia SI
Ottimo, sono riuscito nell'intento. Ma le celle evidenziate nelle righe, poi non si copiano/incollano?
eccezionale grazie
Ciao Marco, grazie, si può effettuare la stessa formattazione condizionale combinata con le Colonne? quindi autoevidenziando Riga e Colonna? Grazie mille.
Ciao Marco, questa soluzione è una valida alternativa all'uso di codice VBA per evidenziare l'intera riga della cella selezionata. Aggiungendo poi application.Calculate risolve il tutto. Abbimo però una criticità. Ad ogni cambio di selezione della cella excel ricalcola tutte le formule e le formattazioni condizionali presenti nel foglio e questo genera rallentamenti nello spostamento del cursore e in alcuni casi nell'applicazione delle formattazioni.
Esiste un metodo per far aggiornare solo la funzione della formattaizone condizionale che abbiamo inserito e che hai mostrato nel video? in alternativa c'è una soluzione per evitare questo problema di rallentamento sovraccarico dei ricalcoli che chiediamo al foglio?
E' possibile ottenere selezionato solo la cella piuttosto che l'intera riga? GRAZIE e complimenti
Grazie.
grazie per il supporto!
Ciao Marco, come si può usare su una cartella con 20 fogli?
Grazie e comodo per file e DB grossi, l'intervallo di applicazione del comando in "formattazione condizionata" funziona anche indicando una tabella? Saluti
Ciao, sì funziona nel senso che puoi scrivere il nome di una tabella nell'intervallo di applicazione della regola. MA appena la applichi confermandola questo verrà trasformato in un riferimento assoluto normale, quindi perdi la dinamicità
Grazie per la semplificazione, lo facevo ma in modo più elaborato (più codice VBA)
LESS IS MORE 😁
ottima spiegazione... se si volesse attivare e disattivare questa funzionalità? come si può fare? -- magari prima della formula si può aggiungere un se(vero), e se (falso ) ?? Grazie
Buongiorno Marco. Il comando in visual BASIC inibisce il copia/incolla.
C'è qualche altro accorgimento ?
Ciao Marco, sono un completo profano di excel e vorrei chiederti come posso evidenziare allo stesso modo due righe in un solo colpo. Grazie e complimenti per le chiare spiegazioni
buongiorno, sono alle prime fasi, tutto molto interessante, ma imparare le logiche di ragionamento excel non è facile ....comunque grazie, ti seguo e mi sono iscritto!!!! GRAZIE
è possibile evidenziare la riga con un grassetto mantenendo la colorazione originale?
Ho notato che se sposti una cella o intervallo di celle si scombina la formattazione condizionale applicata con formula. Devo per forza copiare e incollare i contenuti di una cella per lo spostamento? Grazie
Ho usato la funzione evidenzia duplicati. Come tolgo il colore di evidenziazione quando non mi serve più? Grazie
Dovresti rimuovere la regola di formattazione condizionale dall'intervallo a cui è stata applicata!
TOP
Complimenti "Macro"Braglia :) avrei pero' una question....se il mio foglio ha gia' una formattazione condizionale applicata come posso evidenziare riga cella attiva senza che si modifichi pero' la formattazione gia' presente?! non riesco...se puoi, grazie in anticipo
Video molto utile, grazie. Mi permetto una critica il titolo dice "veloce" e il video dura 20 minuti. Buona giornata, scusa il disturbo
Ciao Enzo, nessun disturbo! In effetti avrei potuto farlo di due minuti MA non avresti imparato e soprattutto CAPITO tutti i passaggi necessari. Una volta che li hai capiti applicarli è velocissimo, in questo senso il metodo di questo video è facile e veloce
mamma mia che spettacolo! funzione troppo carina e comoda. grazie mille per il video
solo una domanda, in un file con una decina di fogli quando entro in VBA per inserire il comando mi dice "MEMORIA ESAURITA" e non mi fa fare nulla.....da cosa dipende secondo te?
ultima cosa, da quando ho messo questo formula non riesco a fare neanche un copia e incolla è normale?
come fare per aggiungere questa macro a più fogli? Grazie e cmq complimenti. Bravissimo soprattutto pedagogicamente
Ciao Marco, ho utilizzato il tuo sistema per evidenziare la riga su cui sto lavorando (ho un foglio con oltre 5000 righe e circa 30 colonne per cui mi è molto comodo questo sistema. Prima dovevo schiacciare Maiusc+spazio per evidenziare la riga in cui ero. Purtroppo non mi funziona più il copia e inserisci righe. Per comodità spesso copio una o più righe e le inserisco come righe copiate in un'altra parte del foglio. Cioè: seleziono una o più righe e poi, col tasto destro del mouse clicco su copia, mi sposto nella posizione che mi interessa e cliccando ancora col tasto destro del mouse mi appariva il menu "inserisci celle copiate" ed il gioco era fatto. Poi sistemavo alcune formule che dovevano avere riferimenti diversi e tuto filava liscio. Ora devo prima inserire gli spazi vuoti che mi serviranno, poi andare a selezionare le righe e copiarle nella posizione. Quando devo far scorrere la pagina di qualche centinaio di righe la cosa è un po' macchinosa. C'è qualche soluzione al problema? Grazie
Ciao come scriverti per fare delle domande su Excel?
Ciao Pasquale, c'è a disposizione il gruppo facebook pubblico per ricevere supporto attivo, facebook.com/groups/excelhasempreragione
❤
Ciao, hai una spiegazione di come compilare un bollettino postale con 2 ricevute (e non 3). Grazie.
Come farlo su Google Sheet, non potendo usare VBA? Grazie
Ciao, excel mi risponde che Vb non supporta la funzione.....
Per limitare l'evidenziazione alle sole celle interne ad un range definito e solo quando si clicca all'interno della tabella stessa basta aggiungere al foglio di lavoro il seguente codice.
Oltre ovviamente alla formattazione condizionale trattata in questo video, per la quale ringrazio l'autore.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Database è il nome del range definito entro il quale si vuole evidenziare la riga
SelectRecord Target, "Database"
End Sub
Sub SelectRecord(Target As Range, RangeName As String)
With Range(RangeName)
If Between(Target.Row, .Cells(1).Row + 1, .Rows.Count + .Cells(1).Row - 1) And _
Between(Target.Column, .Cells(, 1).Column, .Columns.Count + .Cells(, 1).Column - 1) And _
Application.CutCopyMode = False Then Application.Calculate
End With
End Sub
Function Between(Num, Min, Max) As Boolean
Between = (Num >= Min And Num
Peccato che in questo modo non riesci ad evidenziare più celle contemporanea. Selezionando ad esempio due celle evidenza soltanto una. Soluzioni?
ok, scusa, non avevo letto il messaggio in primo piano. provo subito
non posso forzare il ricalcolo perchè quando mi sposto su worksheet restituisce questo messaggio di errore: La variabile utilizza un tipo di automazione non supportato in Visual Basic. dove sbaglio?
Ciao Marco volevo chiederti quando ti sposti da una cella all'altra quest'ultima si circonda di un bordo verde come posso cambiargli colore?? Grazie
Bell'esempio, mi piace. Segnalo che il ricalcolo si forza anche premendo F9, che è fatto apposta. (Maiusc+F9 ricalcola il solo foglio corrente, F9 tutti)
Ciao sto impazzendo, come faccio a colorare delle colonne in base alla formattazione condizionale che ho fatto in base al fatto se sia domenica? Spero di essermi spiegato bene grazie
Molto carino come effetto.... Quanto all'utilità però, e più o meno nulla... Se si vuole evidenziare una riga o una colonna lo si può fare comodamente dalle rispettive intestazioni (anche combinate tenendo premuto ctrl)... Inoltre con la macro che ricalcola costantemente si perde la possibilità di eseguire il copia e incolla. 🖖
Nel commento pinnato c'è la soluzione al problema del copia incolla. Per quanto riguarda l'utilità, dipende tutto dall'utilizzo del file in questione e sono preferenze personali
Ciao Marco
mi spiego meglio, c'è un modo per attivare e disattivare questa funzionalità?
Ciao, interessantissimo, ma una curiosità. In un file con una grossa mole di dati con vari cerca vert e altro, la formattazione condizionale non rallenta l’esecuzioni delle formule? Grazie ☺️
Ciao, sì la formattazione condizionale rallenta il ricalcolo del foglio quindi se il database è molto esteso si potrebbe vedere. In quel caso bisognerebbe passare ad una soluzione più articolata sempre con il codice vba per velocizzare tutto, ma ovviamente non è semplice da applicare come quella mostrata in questo video.
@@macrobraglia Si, quando avrò un po’ più di tempo posterò su FB per un aiuto. Intanto grazie per i tutorial 😃
sono riuscita ad applicare tutte le istruzioni ma ora sul foglio non mi fa più incollare e questo è un problema. come posso risolvere? grazie
come si potrebbe fare la stessa cosa, ma per selezionare le colonne ?
ciao Pasquale, puoi replicare la stessa dinamica con le formule CELLA("col") e RIF.COLONNA
una domanda. Ho incollato in excel tipo 500 domande di un concorso ma vorrei mettere in grassetto tutte le domande così all'occhio mi risulta più facile. Ho pensato che in excel è possibile, ma in word è troppo lunga la cosa.
penso che in Excel ci sia un modo con delle formule che riesce ad evidenziare le domande che sono numerate così 1)...2)...
mentre le risposte hanno A) B) C)
mi chiedevo è possibile secondo te fare una formula che mi evidenzi le righe con i numeri cioè le domande??
mi piacerebbe scoprirlo grazie infinite sei bravo come spieghi!!!
Ciao Cris, certo si può fare in vari modi, volendo anche tutto direttamente con la formattazione condizionale avanzata, ma se non sei pratico è un po' difficile da digerire all'inizio.
Usando qualche passaggio in più, potresti prendere il primo carattere a sinistra di ogni cella con la formula VAL.NUMERO(SE.ERRORE(SINISTRA(cella;1)*1;"")), che ti restituirà VERO se il primo carattere è un numero e FALSO altrimenti. Poi usi questa per evidenziare la riga in grassetto 😉
@@macrobraglia vediamo se ci riesco...
@@macrobraglia però è complesso... io ho copiato un documento di word su excel, le domande sono numerate con parentesi con numero le risposte con le lettere e la parentesi. ho fatto la formula ma poi mi scrive sopra, devo inserire una colonna a sinistra?
e per evidenziare i VERO come si fa??? adesso arriva il bello ahahha
@@macrobraglia NON VIENE mi viene 0, dice che ci sono errori circolari cosa sbaglio??
@@cris85fly Devi aggiungere una colonna alla tua tabella dati e sistemare il riferimento nella formula. Per esempio: colonna A vuota, colonna B iniziano i tuoi dati, nella cella A1 scrivi =VAL.NUMERO(SE.ERRORE(SINISTRA(B1;1)*1;""))
Ciao, ho impostato la sub Selection_change per il ricalcolo su tutte le celle, ma vorrei che funzionasse solo all'interno di una tabella. Se impostate altre macro e impostato application.calculation sul foglio, vanno in errore. Grazie
Farlo completamente con vba?
Si può fare, ma dipende dal motivo...si potrebbe per esempio applicare la regola di formattazione condizionale con il vba solo per la riga interessata. Ma complicherebbe la parte di codice. Questo è il metodo più semplice che ci sia.
Ho seguito il video e grazie per tutto (inpiù ho abilitato le macro), però adesso mi succede che se copio una cella, non me la incolla e da il segnale acustico di quando c'è un errore. Perché mai?
Tutto chiaro, ma come si salva il file con attivazione delle macro? Le ho spuntate nelle impostazioni del file/opzioni/centro protezione/impostazioni/attiva le macro…. Ma non mi fa salvare il file con le modifiche 😢
Ho fatto 😂
Ho fatto tutto paro paro. Durante la VBA ho salvato e mi è uscito "selezionare un formato valido per visual basic" ho salvato con formato 'xlsm' ma non funziona...
Qualcuno sa aiutarmi?
Con le tabelle piene di dati non si riesce a lavorare, rallenta di brutto. Sarebbe bello un video con il codice Vba
Ciao la formula funziona benissimo ed evidenzia la cella selezionata, ora vorrei capire come posso scrivere sulle celle mi spiego: colonna a b c d copio una riga da altro foglio ... ma non mi fa incollare ..unico modo per modificare è entrare in una riga e modificare un campo alla volta ... spero di essermi spiegato, c'e' una soluzione? grazie
la risposta alla mia domanda era gia stata data nei commenti risolto
Non riesco a scatenare il ricalcolo del foglio 😢
io lo caccio così con vba
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Interior.ColorIndex = XLnome
'Target.EntireColumn.Interior.ColorIndex = 40
Target.EntireRow.Interior.ColorIndex = 20
Target.Interior.ColorIndex = XLnome
End Sub
Ottima macro, però non permette di copiare il contenuto di una cella e copiarlo in un'altra
ciao, fatto tutti i passaggi e funziona ma...è normale che non funzioni piu il copia/incolla? se faccio copia e mi sposto sparisce anche il tratteggio nella cella copiata. se trascino la cella la formula viene copiata.
cancellando apllication.calculate (quindi ripristinando il foglio di default) copia/incolla funziona
Ciao, hai ragione mi sono dimenticato un pezzo importantissimo! Al post del solo Application.calculate bisogna inserire queste due righe per far funzionare il copia/incolla:
If Application.CutCopyMode = False Then
Application.Calculate
@@macrobraglia ah ok, manca ancora la chiusura dell' IF, quindi lo script corretto finale sarà:
If Application.CutCopyMode = False Then
Application.Calculate
End If
End Sub
grazie mille Marco, coi tuoi video si imparano
sempre chicche molto utili
@@passoborgo sì, oppure se metti tutto sulla stessa riga non serve END IF 😉
@@macrobraglia ok grazie. per completezza, se non glielo si specifica, perchè copy/paste non funziona piu?
perchè verrà data la precedenza allo script che evidenzia la riga e quindi l'operazione copy, diventando un'operazione successiva, viene disabilitata?
@@passoborgo Non proprio. Il fatto è che il comando Application.calculate RESETTA la clipboard di Windows e quindi si perde il contenuto copiato. Inserendo il controllo con IF prima semplicemente gli diciamo che se trova qualcosa di copiato allora non fa il calculate e quindi non si perde nulla.
Una soluzione più raffinata sarebbe quella di salvare il contenuto della clipboard da qualche parte (esempio una variabile variant o un foglio nascosto), fare il calculate, e poi ripristinare la clipboard, ma va oltre l'obiettivo di questo video 😉
Perché mi esce un avviso “la variabile utilizza un tipo di automazione non supportato in visual basic” come posso risolvere?