Vba datepart işlevi nasıl kullanılır?

VBA DATEPART işlevi, VBA işlevlerinin tarih kategorisinde listelenir. VBA kodunda kullandığınızda tarih veya saat değerinden gün değerini döndürebilir . Basit bir ifadeyle, bir tarih veya saat değerinden saniyeleri, dakikaları, saatleri, günleri, ayları veya yılları elde edebilirsiniz.

Sözdizimi

DatePart(aralık, tarih, [haftanınilkgünü, [yılınilkhaftası]])

Argümanlar

  • Aralık : Sonuçta tarihin hangi kısmının döndürülmesi gerektiğini belirten bir dize.
  • Tarih : Tarih bölümünün geri dönmesi gereken tarih.
  • [FirstDayOfWeek] : Haftanın ilk gününü tanımlayan bir dize [Bu isteğe bağlı bir bağımsız değişkendir ve varsayılan olarak vbSunday atlanırsa].
    • vbUseSystemDayOfWeek – Sistem ayarlarına bağlı olarak.
    • vbPazar – Pazar
    • vblunday – pazartesi
    • vbSalı – Salı
    • vbÇarşamba – Çarşamba
    • vbPerşembe – Perşembe
    • vbCuma – Cuma
    • vbCumartesi – Cumartesi
  • [FirstWeekOfYear] : Yılın ilk haftasını tanımlayan bir dize [Bu isteğe bağlı bir bağımsız değişkendir ve varsayılan olarak vbFirstJan1 atlanırsa].
    • vbSystem – Sistem ayarlarına bağlı olarak.
    • vbFirstJan1 – Ocak ayının 1. gününün gerçekleştiği hafta.
    • vbFirstFourDays – Yeni yılda en az dört gün içeren ilk hafta.
    • vbFirstFullWeek – Yeni yılın ilk tam haftası.

Örnek

VBA DATEPART işlevinin nasıl kullanılacağını pratik olarak anlamak için, onu kullanarak bir vba kodu yazdığımız aşağıdaki örneği incelemeniz gerekir:

example-vba-datepart-function
 Sub example_DATEPART() Range("A2").Value = DatePart("d", Range("A1")) Range("A3").Value = DatePart("h", Range("A1")) Range("A4").Value = DatePart("m", Range("A1")) Range("A5").Value = DatePart("n", Range("A1")) Range("A6").Value = DatePart("q", Range("A1")) Range("A7").Value = DatePart("s", Range("A1")) Range("A8").Value = DatePart("w", Range("A1")) Range("A9").Value = DatePart("ww", Range("A1")) Range("A11").Value = DatePart("y", Range("A1")) Range("A12").Value = DatePart("yyyy", Range("A1")) End Sub

Yukarıdaki kodda DATEPART’ta farklı bir aralık kullandık:

  • Günü almak için ‘d’ ve 15 değerini döndürdü.
  • Saatleri almak için ‘h’ ancak tarihte zamanımız olmadığı için sonuçta 0 değerini döndürdü.
  • Ayı almak için ‘m’ ve 1 değerini döndürdü.
  • ‘n’ dakikaları almak için ancak tarihte zamanımız olmadığı için sonuçta 0 değerini döndürdü.
  • Çeyreği almak için “q” ve 1 döndürdü.
  • ‘s’ saniyeyi almak için ancak tarihte zamanımız olmadığı için sonuçta 0 değerini döndürdü.
  • Haftanın gününü almak için ‘w’ ve 3 değerini döndürdü.
  • Yılın haftasını almak için ‘ww’ ve 3 geri geldi.
  • Yılın gününü almak için ‘y’ ve 15 değerini döndürdü.
  • Yılı almak için “aaaa” ve 2019’a geri döndü.

Yorumlar

  • Yıl olmadan bir tarih girilirse, içinde bulunulan yıl kullanılacaktır.
  • Belirtilen değer tarih dışında bir değerse veya tarih olarak tanınamayan bir tarihse VBA, çalışma zamanı hatası 13’ü döndürür.
  • “Haftanınilkgünü” argümanını ayarlamak yalnızca “aralık” “w” veya “ww” olduğunda işe yarar.

Yorum ekle

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir