025. Formattazione testo mail con VBA

Download PDF

Torniamo a parlare dell’invio di mail attraverso VBA che ho trattato nell’articolo “Invio mail tramite vba”

Questo argomento ha suscitato parecchio interesse e domande tra le quali quella circa la possibilità di impostare il formato del testo da inviare.

E’ possibile farlo utilizzando i Tag Html. Continua a leggere

Fare doppio click su una cella e essere rimandati alle celle della formula

Download PDF

Domanda:

Vorrei sapere come, cliccando due volte su una cella con una formula, vengo rimandata in automatico alla prima cella da cui deriva la formula stessa.

Risposta:

La funzionalità è molto interessante e personalmente la uso tutti giorni. Funziona a modi “link” delle pagine web: fate doppio click su una formula e vi spostate alla cella indicata come prima nella formula stessa. La cosa fenomenale di questo strumento è che se avete in una cella un link esterno a un foglio di lavoro chiuso, bene, facendo doppio click sulla cella, Excel apre il foglio di lavoro: non dovrete più ricordarvi dove si trovano tutti i fogli!

Potrete facimente navigare sui fogli di lavoro con un semplice doppio click.

Continua a leggere

023. Copiare File con VBA

Download PDF

Domanda:

Ho una colonna di Excel dove sono riportati una lista di files (comprensivi di percorso) e in un\’altra colonna il nome di questi files (con percorso destinazione) che integrano nel nome alcune cose. Il problema è: con VBA come faccio a realizzare una istruzione che mi copi i files da una parte all\’altra con un ciclo? Vi ringrazio

Risposta:
posto in un foglio la colonna A con il nome del file da copiare comprensivo di percorso ed estensione,
ed una colonna B il nome del file da incollare comprensivo di percorso ed estensione,
può utilizzare il seguente codice:

Continua a leggere

022. Normalizzare DB con l’aiuto dell’algoritmo Soundex

Download PDF

Domanda:

“storicamente nell’arco di alcuni decenni, differenti persone in differenti modi hanno raccolto dati. La raccolta ammonta ad un totale di circa 3.000 celle all’anno per ogni foglio ed è un incubo perchè lo stile dei fogli è stato stravolto dall’avvicendarsi eterogeneo di decine di collaboratori diversi che si sono succeduti nello stesso ufficio a raccogliere i dati. Dati inseriti in maiuscolo, minuscolo, scritti correttamente per intero, abbreviati, storpiati e/o alterati…. cut….dovrei scoprire il modo di far cercare ad Excel variabili più o meno farcite di wildcard singole tipo le ’?’ o ’*’ da vecchio DOS. Per dire: Corso Vittorio Emanuele II lo posso per esempio trovare come CORSO, corso, C.so, C; Vittorio, VITTORIO, V.; Emanuele, Emmanuele o Emanuelle … una cosa da uscire pazzi. Un Vs. collega dal suo blog mi suggeriva: Io metterei tutti i dati in un unico foglio. Ognuno in una sua riga. La prima colonna conterrà l’anno, così non si perde il riferimento.

Poi, la ricerca ne viene probabilmente facilitata anche con l’uso dell’algoritmo Soundex.

…. cut….l’ho incollata in un modulo ma non riesco a trovare il modo di applicarla.”

 

Risposta:

Personalmente non conoscevo questo algoritmo e ne ho trovato una definizione al seguente link:

http://www.excelvba.it/Forum/story/Visual_Basic_for_Applications/Soundex.html

Soundex è un algoritmo di fonetica per l’indicizzazione di parole secondo il loro suono o pronuncia. cut… L’obiettivo è di poter raggruppare parole omofone (dal suono simile) affinché possano essere abbinate per un ricerca veloce, nonostante differenze o errori di ortografia. cut…Ad esempio, MATTONE è codificato come M350; MATTINO e METANO hanno la stessa codifica M350 (e infatti hanno un suono simile)
Continua a leggere

trattare i tempi di una gara con minuti secondi e centesimi

Download PDF

Domanda:

Aiuto, come posso in una colonna di Excel inserire i tempi di una gara senza digitare: minuti punto – secondi virgola – centesimi. Es.01.30,45. Per praticità servirebbe digitare 013045. Ho provato a formattare ##’00″00 e il risultato è 01’30″45 e andrebbe anche bene ma la somma non avviene per sassegimali ma decimali. Grazie per l\’aiuto

Risposta:

Continua a leggere

Selezionare una variabile composta da parte letterale e parte numerica

Download PDF

Domanda:

Fabio: Ciao, ho necessità di inserire all’interno di una variabile il valore contenuto in un’altra variabile che fa parte di un gruppo di variabili composte da una parte letterale e da una numerica. esempio, voglio costruire parole casuali, inserisco le lettere dell’alfabeto in variabili che chiamerò da L1 ad L26, poi nella variabile ”parola metterò con dei cicli il valore contenuto nella variabile Lx+ Ly+Lz e così via. come posso far sì che Lx o Ly o Lz sia riconosciuta come variabile e non come testo?

Risposta:

Continua a leggere

Salvataggio del solo foglio attivo

Download PDF

Domanda:

Avrei bisogno di aiuto avrei la necessità di salvare il foglio attivo dove tramite macro ho già provveduto ad incollare delle cose, il problema è che mi salva l’intera cartella e non solo il folglio
in questione ho provato sia con ActiveSheet.SaveAs che con ActiveworkBook.saveas ma salva sempre l’intera cartella!!! con tutti i fogli presenti! Continua a leggere

021. Individuare duplicati

Download PDF

Domanda:

Buongiorno a tutti, avrei bisogno del vostro aiuto se possibile.
io ho una colonna excel piena di codici alfanumerici, questa colonna è in costante aggiornamaento perchè ogni giorno vengo inseriti alcuni codici.
io avrei bisogno di un modo per sapere e evidenziare se il codice che sto inserendo è già presente nell’elenco. non sono esperto in materia. ma per lavoro sto cercando di imparare a fare più cose possibili.

Risposta:

Il problema può essere risolto in due modi:

a) Tramite codice VBA

Public Sub VerificaDuplicati()

Last_Row = Sheet1.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
Range(Cells(2, 1), Cells(Last_Row, 1)).Interior.Pattern = xlNone

For i = Last_Row To 2 Step -1     

Conteggio = Application.WorksheetFunction.CountIf(Columns(1), Sheet1.Cells(i, 1))     

If Conteggio > 1 Then        
   Sheet1.Cells(i, 1).Interior.Color = 255     
End If Next i

End Sub

1) Con “Last_Row” identifico l’ultima riga non vuota del foglio che contiene i dati.
2) Identifico tutto il range contenente i codici “Range(Cells(2, 1), Cells(Last_Row, 1))”
e per esso imposto nessun colore di riempimento “.Interior.Pattern = xlNone”
3) Ciclo dall’ultima alla seconda riga del range precedente
“For i = Last_Row To 2 Step -1 …. Next For”
E’ necessario impostare “Step -1” per ciclare dal basso all’alto
4) Per ogni cella analizzata dal ciclo valorizzo una variabile “Conteggio”
con il conteggio delle volte in cui appare il valore della cella analizzata
5) Se la variabile “Conteggio” assume un valore maggiore di 1,
il codice è presente più di una volta e quindi coloro la cella di rosso
“Sheet1.Cells(i, 1).Interior.Color = 255”

B) Utilizzando la formattazione condizionale

Questo è il file d’esempio con le due soluzioni:

VerificaDuplicati

Riccardo Vincenti

020. Estrarre dati da file diversi senza aprirli ad uno ad uno

Download PDF

Domanda:

Ho una cartella contenente diversi file excel che per comodità chiamerò a.xls, b.xls, c.xls, ecc..
Ognuno di questi file ha nel foglio 1 una tabella (identica per tutti i file) con due colonne di dati (a e b)
La mia esigenza è quella di trovare una formula/macro che sommi su un altro foglio (totale.xls) automaticamente tutte le singole celle delle colonne a e b.
Non vorrei aprire i singoli file per fare le somme ma vorrei poter aprire il solo file totale.xls

Risposta:

Innanzitutto facciamo un pò d’ordine nei report da gestire creando una cartella “ARCHIVIO REPORT”
all’interno della quale andremo a creare delle sottocartelle per ciascun Anno_Mese.
All’interno di queste sottocartelle salveremo i report.

La macro lanciata tramite il bottone “Aggiorna” esegue le seguenti operazioni:

Continua a leggere