En aquest tema, aprendrem a treballar amb llibres (workbooks) i fulls de càlcul (worksheets) utilitzant VBA. Aquestes són les unitats fonamentals en Excel, i saber com manipular-les és essencial per automatitzar tasques i crear solucions eficients.
Objectius del tema
- Comprendre com accedir i manipular llibres i fulls de càlcul.
- Aprendre a crear, obrir, tancar i guardar llibres.
- Saber com afegir, eliminar i seleccionar fulls de càlcul.
- Accedir a llibres i fulls de càlcul
1.1. Accedir al llibre actiu
El llibre actiu és el llibre que està actualment obert i visible a Excel.
Dim wb As Workbook Set wb = ThisWorkbook ' Fa referència al llibre on s'està executant el codi ' o Set wb = ActiveWorkbook ' Fa referència al llibre que està actualment actiu
1.2. Accedir a un full de càlcul específic
Podem accedir a un full de càlcul específic dins d'un llibre utilitzant el seu nom o índex.
Dim ws As Worksheet Set ws = wb.Sheets("NomDelFull") ' Accedir per nom ' o Set ws = wb.Sheets(1) ' Accedir per índex (el primer full)
- Crear, obrir i tancar llibres
2.1. Crear un nou llibre
Podem crear un nou llibre utilitzant el mètode Add
de l'objecte Workbooks
.
2.2. Obrir un llibre existent
Per obrir un llibre existent, utilitzem el mètode Open
de l'objecte Workbooks
.
2.3. Tancar un llibre
Podem tancar un llibre utilitzant el mètode Close
.
- Guardar llibres
3.1. Guardar un llibre
Per guardar un llibre, utilitzem el mètode Save
o SaveAs
.
nouLlibre.Save ' Guarda el llibre amb el nom actual ' o nouLlibre.SaveAs "C:\Ruta\Al\NouLlibre.xlsx" ' Guarda el llibre amb un nou nom
- Manipular fulls de càlcul
4.1. Afegir un nou full de càlcul
Podem afegir un nou full de càlcul utilitzant el mètode Add
.
Dim nouFull As Worksheet Set nouFull = wb.Sheets.Add(After:=wb.Sheets(wb.Sheets.Count)) ' Afegeix un nou full al final
4.2. Eliminar un full de càlcul
Per eliminar un full de càlcul, utilitzem el mètode Delete
.
4.3. Seleccionar un full de càlcul
Podem seleccionar un full de càlcul utilitzant el mètode Select
.
Exercicis pràctics
Exercici 1: Crear i guardar un nou llibre
- Crea un nou llibre.
- Afegeix un nou full de càlcul al llibre.
- Guarda el llibre amb el nom "NouLlibre.xlsx" a l'escriptori.
Solució
Sub CrearIGuardarNouLlibre() Dim nouLlibre As Workbook Dim nouFull As Worksheet ' Crear un nou llibre Set nouLlibre = Workbooks.Add ' Afegir un nou full de càlcul Set nouFull = nouLlibre.Sheets.Add(After:=nouLlibre.Sheets(nouLlibre.Sheets.Count)) ' Guardar el llibre nouLlibre.SaveAs "C:\Users\ElTeuUsuari\Desktop\NouLlibre.xlsx" End Sub
Exercici 2: Obrir un llibre existent i eliminar un full de càlcul
- Obre el llibre "Existent.xlsx" des de l'escriptori.
- Elimina el full de càlcul anomenat "Eliminar".
Solució
Sub ObrirIEliminarFull() Dim llibreExistent As Workbook ' Obrir el llibre existent Set llibreExistent = Workbooks.Open("C:\Users\ElTeuUsuari\Desktop\Existent.xlsx") ' Eliminar el full de càlcul llibreExistent.Sheets("Eliminar").Delete ' Guardar i tancar el llibre llibreExistent.Close SaveChanges:=True End Sub
Conclusió
En aquesta secció, hem après a treballar amb llibres i fulls de càlcul en VBA. Hem vist com accedir, crear, obrir, tancar i guardar llibres, així com afegir, eliminar i seleccionar fulls de càlcul. Aquests coneixements són fonamentals per automatitzar tasques en Excel i crear solucions eficients. En el proper tema, explorarem com manipular cel·les i rangs dins dels fulls de càlcul.
Curs de VBA (Visual Basic for Applications)
Mòdul 1: Introducció a VBA
Mòdul 2: Conceptes bàsics de VBA
- Variables i tipus de dades
- Operadors en VBA
- Estructures de control: If...Then...Else
- Bucles: For, While, Do Until
- Treballar amb arrays
Mòdul 3: Treballar amb objectes d'Excel
- Comprendre el model d'objectes d'Excel
- Treballar amb llibres i fulls de càlcul
- Manipulació de cel·les i rangs
- Utilitzar l'objecte Range
- Formatar cel·les amb VBA
Mòdul 4: Programació avançada en VBA
- Crear i utilitzar funcions
- Gestió d'errors en VBA
- Tècniques de depuració
- Treballar amb UserForms
- Programació basada en esdeveniments
Mòdul 5: Interactuar amb altres aplicacions
- Automatitzar Word amb VBA
- Automatitzar Outlook amb VBA
- Accedir a bases de dades amb VBA
- Utilitzar VBA per controlar PowerPoint
Mòdul 6: Millors pràctiques i optimització
- Escriure codi VBA eficient
- Tècniques de refactorització de codi
- Documentar el teu codi
- Control de versions per a projectes VBA