Skip to main content

AccessTr.neT


Access VBA ile Tarih Formatı Değiştirmek

Access VBA ile Tarih Formatı Değiştirmek

Çözüldü #1
Merhaba arkadaşlar, 

sistemim ms Sql ile bağlı tablolar aracılığı ile çalışıyor. Sql üzerinde tarih formatını değişrmeyi beceremedim. Bu sebeple formlar üzerindeki dd.mm.yyyy şeklinde olan tarih formatını Sql in istediği yyyy-mm-dd formatına çevirmek istedim. Bunun için bütün formlarda iki tarih alanı oluşturdum ve aşağıdaki resimde de görebileceğiniz gibi yaptım. 

[Resim: do.php?img=5295]

Yalnız gerin görün ki aynı işlemi "pbif" adlı formda uyguladığım zaman "Type Mismatch" hatası alıyorum. Kodlamalar birebir aynı. Sorunun Sql üzerindeki tabloların data tipiden olacağını düşündüm. Fakat data tiplerini date olarakta yapsam veya nvchar olarak da yapsam hep aynı hatayı aldım. Diğer tablolar bütün datat tiplrinde çalıştı birtek bu çalışamadı. Yardımlarınızı bekliyorum. Teşekkürler.

[Resim: do.php?img=5296]

T
.rar pbif22.rar (Dosya Boyutu: 588,9 KB | İndirme Sayısı: 17)
Cevapla
#2
Sorunlu olan formun kayıt kaynağındaki tabloda tarih alanları Tarih/Saat olarak belirlenmiş. Bunları Metin olarak değiştirirsen düzelir.

Ayrıca, nesne isimleri Access yerleşik ifadeler ile aynı olmamalı. format adında metin kutusu eklemişsin. Bunun adını mtn_format vs. şeklinde değiştir.
"Boş Örnek Eklerim, Yapıp Verirler" demeyin, örneğinizi hazırlayın.
Komplike kod talebiniz var ise İletişim bağlantısından bize ulaşın. 
Cebelleşmezsen Öğrenemezsin. 
Cevapla
#3
Çok sağolun hocam, saatlerce denedim format isminden kaynaklanacağını hiç düşünmemiştim. Çok teşekkürler.
Cevapla
#4
Aslında bazı modüllerdeki acıklamaları görünce incelemeyi bırakmıştım.
"Boş Örnek Eklerim, Yapıp Verirler" demeyin, örneğinizi hazırlayın.
Komplike kod talebiniz var ise İletişim bağlantısından bize ulaşın. 
Cebelleşmezsen Öğrenemezsin. 
Cevapla
#5
ek olarak format değiştirme olayında bölüm bölüm alarakta yapabillirsiniz. Örneğin:

2015-11-26 tarihini

me.metinkutusu = mid(tarih,9,2) & "." & mid(tarih,6,2) & "." &  mid(tarih,1,4)  yazdığınızda = 26.11.2015  verecektir.

mid(tarih,9,2) yazan yerdeki tarih olayına metin kutusu veya değişken atayabilirsiniz.

mid(me.metinkutusuadi,9,2) tarzında.
----------------------------------------------

ayrıca bu durumu left, right ve mid 3 ünü kullanarakta yapabilirsiniz. 

2015-11-26 tarihini


me.metinkutusu = left(tarih,4) & "." & mid(tarih,6,2) & "." &  right(tarih,2)  yazdığınızda = 26.11.2015  verecektir.
POWER 'un Çekirgesi :=)
ozguryasin, 23-09-2009 tarihinden beri AccessTr.neT AİLESİ üyesidir.
Access'i Profesyonel Şekilde Öğrenmek İçin https://www.accesstr.net Ailesi Yeter. alkis


Site Kurallarını sorularınızın hızlı cevaplanması için kesinlikle okuyunuz.
Cevapla
#6
ayrıca şunuda belirteyim. deminki şekilde üst üste uğraşmak istemiyorsanız. convert fonksiyonunu da kullanabilirsiniz.

vba bölümüne

me.tariholanmetinkutusu = cdate(me.tarih) bu durum sorguda ve formdada gerçekleşiyor.

aslında bir çok yol ve yöntem var :S

şu tarih olayını bir türlü stabilduruma getirmediler. MsSql'de
POWER 'un Çekirgesi :=)
ozguryasin, 23-09-2009 tarihinden beri AccessTr.neT AİLESİ üyesidir.
Access'i Profesyonel Şekilde Öğrenmek İçin https://www.accesstr.net Ailesi Yeter. alkis


Site Kurallarını sorularınızın hızlı cevaplanması için kesinlikle okuyunuz.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da