En aquest tema, aprendrem com manipular cel·les i rangs en Excel utilitzant VBA. Aquest és un aspecte fonamental per a qualsevol programador de VBA, ja que la majoria de les operacions que realitzem en Excel impliquen treballar amb cel·les i rangs.

Objectius del tema

  • Comprendre com seleccionar cel·les i rangs.
  • Aprendre a llegir i escriure dades en cel·les.
  • Manipular propietats de les cel·les, com ara el format.
  • Utilitzar mètodes per copiar, enganxar i esborrar cel·les i rangs.

Seleccionar cel·les i rangs

Seleccionar una cel·la

Per seleccionar una cel·la específica, utilitzem l'objecte Range. Per exemple, per seleccionar la cel·la A1:

Sub SeleccionarCel·la()
    Range("A1").Select
End Sub

Seleccionar un rang de cel·les

Per seleccionar un rang de cel·les, especifiquem el rang en el format "A1:B2":

Sub SeleccionarRang()
    Range("A1:B2").Select
End Sub

Seleccionar cel·les no contigües

Podem seleccionar cel·les no contigües separant els rangs amb una coma:

Sub SeleccionarCel·lesNoContigües()
    Range("A1, C1, E1").Select
End Sub

Llegir i escriure dades en cel·les

Llegir dades d'una cel·la

Per llegir el valor d'una cel·la, utilitzem la propietat Value:

Sub LlegirDada()
    Dim valor As String
    valor = Range("A1").Value
    MsgBox valor
End Sub

Escriure dades en una cel·la

Per escriure un valor en una cel·la, també utilitzem la propietat Value:

Sub EscriureDada()
    Range("A1").Value = "Hola, món!"
End Sub

Manipular propietats de les cel·les

Canviar el color de fons

Podem canviar el color de fons d'una cel·la utilitzant la propietat Interior.Color:

Sub CanviarColorFons()
    Range("A1").Interior.Color = RGB(255, 255, 0) ' Color groc
End Sub

Canviar el format de la font

Podem canviar el format de la font utilitzant la propietat Font:

Sub CanviarFormatFont()
    With Range("A1").Font
        .Name = "Arial"
        .Size = 12
        .Bold = True
        .Color = RGB(255, 0, 0) ' Color vermell
    End With
End Sub

Mètodes per copiar, enganxar i esborrar cel·les i rangs

Copiar i enganxar cel·les

Per copiar i enganxar cel·les, utilitzem els mètodes Copy i Paste:

Sub CopiarEnganxar()
    Range("A1").Copy
    Range("B1").PasteSpecial Paste:=xlPasteAll
    Application.CutCopyMode = False ' Desactiva el mode de tallar/copiar
End Sub

Esborrar cel·les

Per esborrar el contingut d'una cel·la, utilitzem el mètode ClearContents:

Sub EsborrarCel·la()
    Range("A1").ClearContents
End Sub

Exercicis pràctics

Exercici 1: Canviar el color de fons de diverses cel·les

Escriu un subprocediment que canviï el color de fons de les cel·les A1 a A5 a blau.

Sub CanviarColorFonsBlau()
    Range("A1:A5").Interior.Color = RGB(0, 0, 255) ' Color blau
End Sub

Exercici 2: Copiar i enganxar un rang de cel·les

Escriu un subprocediment que copiï el rang A1:B2 i l'enganxi a la cel·la D1.

Sub CopiarEnganxarRang()
    Range("A1:B2").Copy
    Range("D1").PasteSpecial Paste:=xlPasteAll
    Application.CutCopyMode = False
End Sub

Exercici 3: Escriure una fórmula en una cel·la

Escriu un subprocediment que escrigui la fórmula =SUM(A1:A5) a la cel·la B1.

Sub EscriureFormula()
    Range("B1").Formula = "=SUM(A1:A5)"
End Sub

Conclusió

En aquest tema, hem après com seleccionar, llegir, escriure i manipular cel·les i rangs en Excel utilitzant VBA. Aquests conceptes són fonamentals per a qualsevol tasca d'automatització en Excel. En el proper tema, explorarem com utilitzar l'objecte Range per a operacions més avançades.

© Copyright 2024. Tots els drets reservats