• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Tarih aktarma

  • Konbuyu başlatan Konbuyu başlatan Barons
  • Başlangıç tarihi Başlangıç tarihi

Barons

Altın Üye
Katılım
14 Mayıs 2005
Mesajlar
967
Excel Vers. ve Dili
Microsoft Ofis 365
merhaba
ekteki dosyada I2 hücresine userform kullanarak tarih ve saat aktarmak istiyorum.bu aktarılan değere 8 saat ilave edilerek bu değerde K2 hücresine aktarılacak.Teknik olarak basit gibi görülüyor ancak zor olduğu düşüncesindeyim.Çünkü formatı farklı ve en sonda 3 sıfır var.
ay/gün/yıl olarak format olmak zorunda v.s.

formaT AŞAĞIDADIR.

01.11.2010 07:00:00.000

yardımcı olacak arkadaşlara çok teşekkürler
 

Ekli dosyalar

selam arkadaşım senin istediğin formattamı olacak bu istediğin
yok başka bir format mı istiyorsun
 
ekli dosyay bakarmısınız.
 

Ekli dosyalar

teşekkürler ancak benim istediğim bu değildi.Aslında tam anlatamadım hata bende oldu.sizin yaptığınız userform üzerinden gidersek;
1. textbox1 yada textbox2'de bilgisayarın o anki sistem tarih ve saati olmalı (tabi I2 hücresindeki formata uygun.) diyelimki textbox1'de olsun.
2.textbox'da ay/gün/yılda sorun yok ancak saat kısmında ;eğer o anda saat 07 Yi geçmişse 07;
15' geçmişse 15 ve
23'ü geçmişse 23 olarak saat kısmı textbox'da olmalı.
3.Textbox2'deki değer ise ;textbox2=Textbox1 +8 saat olmalı.yani 8 saat eklemeli.
4.son olarakda; Bu textbox1 ve textbox2 değerleri sırayla I2 ve K2 hücrelerine bir buton aracılığı ile aktarılabilmeli.

umarım anlatabilmişimdir.tekrar teşekkürler Sn.Halit3
 
teşekkürler ancak benim istediğim bu değildi.Aslında tam anlatamadım hata bende oldu.sizin yaptığınız userform üzerinden gidersek;
1. textbox1 yada textbox2'de bilgisayarın o anki sistem tarih ve saati olmalı (tabi I2 hücresindeki formata uygun.) diyelimki textbox1'de olsun.
2.textbox'da ay/gün/yılda sorun yok ancak saat kısmında ;eğer o anda saat 07 Yi geçmişse 07;
15' geçmişse 15 ve
23'ü geçmişse 23 olarak saat kısmı textbox'da olmalı.
3.Textbox2'deki değer ise ;textbox2=Textbox1 +8 saat olmalı.yani 8 saat eklemeli.
4.son olarakda; Bu textbox1 ve textbox2 değerleri sırayla I2 ve K2 hücrelerine bir buton aracılığı ile aktarılabilmeli.

umarım anlatabilmişimdir.tekrar teşekkürler Sn.Halit3

2. sorunla 3. sorunu anlıyamadım
 
merhaba

textbox1'de o anki sistem saati tarihive saati olmalı.örnekle gideyim.
Benim mesajı yazdığım şu an tarih: 01.13.2010 07:50:00.000...
textbox1'de tarih şöyle olmalı:01.13.2010 07:00:00.000
yani o an saat 07'den büyükse 07 olmalı..mesela mesajı yazdığım saat 11:30 olsaydı yine 07 olacaktı.bu koşul saat 15:00 da bitecek.kısaca
07:00- 14:59 arası bütün değerler 07:00:00.000 olacak.
15:00 - 22:59 arası bütün değerler 15:00:00.000 olacak.
23:00 - 06:59 arası 23:00:00.000 olacak.
textbox1'in alacağı değerler bunlar.

textbox2'ye gelince textbox1'deki saate 8 saat eklenecek. örnek:
textbox1 değeri 01.13.2010 07:00:00.000 olsun.bu durumda textbox2 değeri 01.13.2010 15:00:00.000 olmalıdır.
 
bu dosyaya bir bak 3 adet textbox var istediklerini bunlar yapıyor kontrol et
 

Ekli dosyalar

çok teşekkürler...elinize sağlık...sadece 2 ufak mesele kalmış...bunlardan ilkini hallettim.o'da şuydu...saat 9 da bu işlemi yaptığımda ilk değer 07 ancak ikinci değer 16 oluyordu ...bunu deg2 değerlerinide sabitleyerek hallettim...
2.problem..sadece saat 23'de oluşan bir problem...sistem saatini 23 yaptığımda ikinci saat 07 oluyor ancak tarih 13 iken 1 gün ilerlemesi gerekiyor yani 14 olması gerekiyor.Bu kısım kaldı sadece...deg5 ile yapmaya çalıştım ama bir yerde sorun var sanırım.

Kodlar aşağıdadır.

Private Sub CommandButton1_Click()
TextBox1.Text = Format(Now, "mm.dd.yyyy hh:00:00.000")
deg1 = Mid(TextBox1.Text, 1, 10)
deg2 = Val(Mid(TextBox1.Text, 12, 2) + 7)
deg3 = Val(Mid(TextBox1.Text, 12, 2))
'deg5 = Val(Mid(TextBox1.Text, 3, 2))



If deg3 >= 7 And deg3 < 15 Then
deg3 = 7
deg2 = 15
ElseIf deg3 >= 15 And deg3 < 23 Then
deg3 = 15
deg2 = 23
ElseIf deg3 >= 23 Then
deg3 = 23
deg2 = 7
'deg5 = deg5 + 1
End If

If deg2 > 24 Then
deg2 = deg2 - 24
deg1 = CDate(deg1) + 1
End If

deg4 = Mid(TextBox1.Text, 14, Len(TextBox1.Text))
Cells(2, "I").Value = deg1 & " " & Format(deg3, "00") & deg4
Cells(2, "K").Value = deg1 & " " & Format(deg2, "00") & deg4

TextBox2.Text = deg1 & " " & Format(deg2, "00") & deg4
'Cells(4, "K").Value = TextBox3.Text
TextBox3.Text = deg1 & " " & Format(deg3, "00") & deg4
TextBox1.Text = Format(Now, "mm.dd.yyyy hh:mm:ss.000")

End Sub



Private Sub UserForm_Initialize()
'TextBox2.Text = Format(Now, "dd.mm.yyyy hh:mm:00.000")
'TextBox1.Text = Format(Now, "dd.mm.yyyy hh:mm:ss.000")
TextBox1.Text = Format(Now, "mm.dd.yyyy hh:mm:00.000")
End Sub
 
2.problem..sadece saat 23'de oluşan bir problem...sistem saatini 23 yaptığımda ikinci saat 07 oluyor ancak tarih 13 iken 1 gün ilerlemesi gerekiyor yani 14 olması gerekiyor.Bu kısım kaldı sadece

1 gün ilerliyor tarih
 
bu koda bir bakarmısınız.

Private Sub CommandButton1_Click()
TextBox1.Text = Format(Now, "dd.mm.yyyy hh:00:00.000")
deg1 = Mid(TextBox1.Text, 1, 10)
deg2 = Val(Mid(TextBox1.Text, 12, 2) + 7)
deg3 = Val(Mid(TextBox1.Text, 12, 2))
If deg3 >= 7 And deg3 < 15 Then
deg3 = 7
ElseIf deg3 >= 15 And deg3 < 23 Then
deg3 = 15
ElseIf deg3 >= 23 Then
deg3 = 23
End If
If deg2 > 24 Then
deg2 = deg2 - 24
deg5 = CDate(deg1) + 1
Else
deg5 = deg1
End If
deg4 = Mid(TextBox1.Text, 14, Len(TextBox1.Text))
Cells(2, "I").Value = deg1 & " " & Format(deg3, "00") & deg4
Cells(2, "K").Value = deg5 & " " & Format(deg2, "00") & deg4
TextBox2.Text = deg5 & " " & Format(deg2, "00") & deg4
TextBox3.Text = deg1 & " " & Format(deg3, "00") & deg4
TextBox1.Text = Format(Now, "dd.mm.yyyy hh:mm:ss.000")
End Sub
 
evet tarih ilerliyor ancak tarih formatı benim istediğim gibi değil.
sizin formatınız:Format(Now, "dd.mm.yyyy hh:mm:ss.000")

benim istediğim format : Format(Now, "mm.dd.yyyy hh:mm:ss.000")

teşekkürler
 
o zaman sorunu çözmüşsünüz
 
maalesef benim istediğim formatta tarih ilerlemiyor.Normal formatta yani sizin yazdığınız formatta olursa ilerliyor.Bunu çözemedim.

saygılar
 
gönderdiğin dosya örneğindeki gibi ilerliyor
eğer ilerlemiyorsa örnek bir dosya gönder şöyleyken böyle olmasını istiyorum gibi
 
bu kodu deneyiniz.

Private Sub CommandButton1_Click()
TextBox1.Text = Format(Now, "mm.dd.yyyy hh:00:00.000")
deg1 = Mid(TextBox1.Text, 1, 10)
deg2 = Val(Mid(TextBox1.Text, 12, 2) + 7)
deg3 = Val(Mid(TextBox1.Text, 12, 2))
If deg3 >= 7 And deg3 < 15 Then
deg3 = 7
ElseIf deg3 >= 15 And deg3 < 23 Then
deg3 = 15
ElseIf deg3 >= 23 Then
deg3 = 23
End If
If deg2 > 24 Then
deg2 = deg2 - 24
deg5 = CDate(deg1) + 1
deg5 = Format(deg5, "mm.dd.yyyy")
Else
deg5 = deg1
End If
deg4 = Mid(TextBox1.Text, 14, Len(TextBox1.Text))
Cells(2, "I").Value = deg1 & " " & Format(deg3, "00") & deg4
Cells(2, "K").Value = deg5 & " " & Format(deg2, "00") & deg4
TextBox2.Text = deg5 & " " & Format(deg2, "00") & deg4
TextBox3.Text = deg1 & " " & Format(deg3, "00") & deg4
TextBox1.Text = Format(Now, "mm.dd.yyyy hh:mm:ss.000")
End Sub
Private Sub UserForm_Initialize()
TextBox1.Text = Format(Now, "mm.dd.yyyy hh:mm:00.000")
End Sub
 
ÇOK teşekkürler..son gönderdiğiniz kod ile olmuş gözüküyor...bir kaç deneme daha yapacağım ama şu an sorun yok gibi...elinize sağlık
 
iyi çalışmalar
 
Sn.Halit
sistem iyi çalışıyor ,tarihde ilerliyor.ancak sistem saatimi 23:45 yaptım :sonuç
tarih ilerledi ancak 23:00 - 07:00 yerine
23:00 - 06:00
değeri oluştu.aslında bu 7-15 ve 15-23 değerlerindede oluyordu ama ben sizin kodlara deg2 değerlerini ilave ettim.Bunlar düzeldi...sorun sadece 23,de.
sistem saatinizi 23 sonrasına alıp aktar düğmesine basarsanız demek istediğim daha iyi anlaşılır.
dosyayı gönderiyorum.
 

Ekli dosyalar

bu nu denermisiniz.

Private Sub CommandButton1_Click()
TextBox1.Text = Format(Now, "mm.dd.yyyy hh:00:00.000")
deg1 = Mid(TextBox1.Text, 1, 10)
deg2 = Val(Mid(TextBox1.Text, 12, 2) + 7)
deg3 = Val(Mid(TextBox1.Text, 12, 2))
If deg3 >= 7 And deg3 < 15 Then
deg3 = 7
ElseIf deg3 >= 15 And deg3 < 23 Then
deg3 = 15
ElseIf deg3 >= 23 Then
deg3 = 23
End If
If deg3 >= 23 Then
deg2 = Val(Mid(TextBox1.Text, 12, 2) + 8)
End If

If deg2 > 24 Then
deg2 = deg2 - 24
deg5 = CDate(deg1) + 1
deg5 = Format(deg5, "mm.dd.yyyy")
Else
deg5 = deg1
End If
deg4 = Mid(TextBox1.Text, 14, Len(TextBox1.Text))
Cells(2, "I").Value = deg1 & " " & Format(deg3, "00") & deg4
Cells(2, "K").Value = deg5 & " " & Format(deg2, "00") & deg4
TextBox2.Text = deg5 & " " & Format(deg2, "00") & deg4
TextBox3.Text = deg1 & " " & Format(deg3, "00") & deg4
TextBox1.Text = Format(Now, "mm.dd.yyyy hh:mm:ss.000")
End Sub
 
Sn.halit hocam...elinize sağlık..şuan sorunsuz çalışıyor
 
Geri
Üst