Kuidas vormindada kuupäeva VBA kaudu?

Anonim

Selles artiklis õpime, kuidas kuupäeva VBA kaudu vormindada.

Võtame näite, et mõista, kuidas ja kus saame lahtrit lühikese kuupäeva numbriga vormindada.

Meil on toote koguse andmed vahemikus A1: C9, kus veerg A sisaldab toote nime ja veerg B sisaldab selle kogust ning veerg C sisaldab kuupäeva. Nüüd tahame teisendada lühikese kuupäeva vormingusse.

Makro kirjutamiseks toimige järgmiselt.-

  • Avage VBA leht, vajutage klahve Alt+F11.
  • Sisestage moodul.
  • Kirjutage allpool nimetatud kood:

AlamvormingShortdate ()

Dim Sh kui tööleht

Set Sh = ThisWorkbook.Sheets (1)

Sh.Range ("C2: C9"). NumberFormat = "m/d/yyyy"

End Sub

Koodi selgitus:-

Esiteks oleme koodi jaoks andnud teema, seejärel määratlenud kõik muutujad ja seejärel määratlenud vahemiku, kuhu soovime lühikese kuupäeva vormingu panna.

Makro käitamiseks vajutage klahvi F5 ja vahemiku vorming muudetakse lühikeseks kuupäevavorminguks.

Võtame näite saidilt www.excelforum.com

Makro/VBA muudab kuupäevavormingut 01.01.2011 kuni 01.01.2011

Algne küsimus:-

Mul on Exceli veebipäring, mis tõmbab tabeli Excelisse. Veerg A on põhimõtteliselt nimede loend ja veerg B on asjakohane kuupäev. Kuupäevad on veebisaidil loetletud vormingus 01.01.2011 ja imporditakse seejärel sel viisil Excelisse. Seetõttu ei saa ma veergu B kuupäevaväärtuse järgi sortida, kuna Excel ei tuvasta vormingut. Olen proovinud muuta kuupäeva atribuute, kasutades funktsiooni Otsimine ja asendamine, et muuta see 01/01/2011 vormingusse ja seejärel atribuute kõik tulutult muuta.

Ideaalis tahaksin lihtsalt, et mingi makro/VBA kood muudetaks 01.01.2011 vorminguks 01.01.2011, et saaksin veergu sortida.

Lahenduse tundmaõppimiseks klõpsake linki

Lae alla - VBA lühike kuupäevavorming - xlsm