• DİKKAT

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

Otomatik Virgül Atımı

  • Konbuyu başlatan Konbuyu başlatan mc_exrem
  • Başlangıç tarihi Başlangıç tarihi
Katılım
25 Mayıs 2010
Mesajlar
480
Excel Vers. ve Dili
Office 2019
64bit
Tr
Win 10
Merhabalar,
Sürekli ,451 ,541 1,254 gibi sayısal verileri giren biri olarak hücreye veriyi girince virgülü kendisinin atması mümkün mü? Biraz daha açıklamak gerekirse ben hücreye 546 yazınca otomatik olarak 0,546 yazmasını istiyorum çünki değeri sıfırın altında görmesi gerek yoksa m2 hesabı yanlış çıkıyor.
Yardımlarınız için teşekkür eder çalışmalarınızda kolaylıklar dilerim :)
 
. . .

Makro ile yapabilirsiniz.
Ancak bunun için veri girişi yaptığınız sütunları belirtmelisiniz, buna kod yazmak gerekir.

Makrosuz yapmak isteseniz.

Yardımcı bir sütun kullanarak, bu sütuna veri girişi yaptığınız sütundan veri aldırıp 1000'e bölebilirsiniz. M2 hesabı için sonuçları bu hücreden aldırmalısınız.
Yardımcı sütun için örnek formül:=A1/1000


. . .
 
Veri gireceğiniz hücrelere sağ tıklayıp>hücreleri biçimlendir>isteğe uyarlanmış bölümünden tür kısmına 0,### yazarsanız girdiğiniz 3 haneli değerlerin soluna 0 (sıfır) eklenecektir.
 
Veri gireceğiniz hücrelere sağ tıklayıp>hücreleri biçimlendir>isteğe uyarlanmış bölümünden tür kısmına 0,### yazarsanız girdiğiniz 3 haneli değerlerin soluna 0 (sıfır) eklenecektir.
Merhaba,

Bu yöntem hesaplamada görüntüde kalır. Hatalı sonuç alınmasına neden olur. Hüseyin Bey'in dediği yöntem ile çözülmesi gerekmekte..


...
 
Eğer hesaplama için kullanılacaksa benim söylediğim şekilde kullanılırsa hatalı sonuç verir.Hüseyin Bey'in dediği gibi çözülebilir. Uyarı için teşekkürler,Mahir Bey.
 
. . .

Makro ile yapabilirsiniz.
Ancak bunun için veri girişi yaptığınız sütunları belirtmelisiniz, buna kod yazmak gerekir.

Makrosuz yapmak isteseniz.

Yardımcı bir sütun kullanarak, bu sütuna veri girişi yaptığınız sütundan veri aldırıp 1000'e bölebilirsiniz. M2 hesabı için sonuçları bu hücreden aldırmalısınız.
Yardımcı sütun için örnek formül:=A1/1000


. . .

Yardımlarınız için teşekkürler, ancak makro ile nasıl yapabilirim?
 
. . .

Bu hesaplamayı yapmak istediğiniz sütun veya hücreleri belirtmeniz gerekiyor .
Buna göre kod yazmak gerekir.


. . .

kod yazmayı bilmediğim için soruyorum. ama zahmetli bi işe benziyor yazılım gibi bi şey galiba. ama yardım ederseniz hallederim tabi
 
Veri gireceğiniz hücrelere sağ tıklayıp>hücreleri biçimlendir>isteğe uyarlanmış bölümünden tür kısmına 0,### yazarsanız girdiğiniz 3 haneli değerlerin soluna 0 (sıfır) eklenecektir.

sizin dediğiniz şekilde yaparsanız 565 tuşlarsanız 565, şeklinde yazıyor maalesef.
 
kod yazmayı bilmediğim için soruyorum. ama zahmetli bi işe benziyor yazılım gibi bi şey galiba. ama yardım ederseniz hallederim tabi

hocam bende aynı dertten muzdaribim . rakamları yazacağım hücrede =H8/1000 yapınca hata veriyor. kodlama nasıl yapılıyor acaba onu yapmaya çalışayım.
 
. . .

Örnek dosya ektedir. Geliştirmesi size kalmış.
A1:A100 aralığana girilen sayısal değerleri 1000' e böler. (sarı dolgulu alan)

...::: Ekli Dosyayı İndirmek İçin Linki Tıklayınız :::...
http://yadi.sk/d/9VzuHLMEFknGF

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A1:A100]) Is Nothing Then Exit Sub
Application.EnableEvents = False
On Error Resume Next

Target.Value = Target.Value / 1000

Application.EnableEvents = True
End Sub

. . .
 
hocam bende aynı dertten muzdaribim . rakamları yazacağım hücrede =H8/1000 yapınca hata veriyor. kodlama nasıl yapılıyor acaba onu yapmaya çalışayım.

Bende hata vermiyor ve şuan kullanıyorum. Herhangi bi hücreye yazıp belirlediğin hücreye virgüllü şekli çıkıyor.
xAYlmp.jpg
[/url][/IMG]
sağ tarafa ölçüleri yazıyorum sol tarafta virgüllü olarak çıkıyor. çıktı alırken sadece virgüllü kısım yazılıyor (sayfa son izlemeden yazılması gereken yeri belirliyorsun)
 
Son düzenleme:
. . .

Örnek dosya ektedir. Geliştirmesi size kalmış.
A1:A100 aralığana girilen sayısal değerleri 1000' e böler. (sarı dolgulu alan)



Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A1:A100]) Is Nothing Then Exit Sub
Application.EnableEvents = False
On Error Resume Next

Target.Value = Target.Value / 1000

Application.EnableEvents = True
End Sub

. . .

Dosya boş tekrar yüklemeniz mümkün mü acaba?
 
Bende hata vermiyor ve şuan kullanıyorum. Herhangi bi hücreye yazıp belirlediğin hücreye virgüllü şekli çıkıyor.
xAYlmp.jpg
[/url][/IMG]
sağ tarafa ölçüleri yazıyorum sol tarafta virgüllü olarak çıkıyor. çıktı alırken sadece virgüllü kısım yazılıyor (sayfa son izlemeden yazılması gereken yeri belirliyorsun)



benim çalışma sayfam böyle Sizin dedğiniz gibi olur ama ben yazdırma yapmıyorum mail atıyorum müdüre kadar gidiyor bu mail.O yüzden gizlisi saklısı olmasını istemiyorum .
Sadece işlem kolaylığı olsun diye uğraşıyorum laptoptan rakam girmesi zor geliyor :)
 
. . .


Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A1:A100]) Is Nothing Then Exit Sub
Application.EnableEvents = False
On Error Resume Next

Target.Value = Target.Value / 1000

Application.EnableEvents = True
End Sub

. . .

Hüseyin bey çok teşekkürler kodlarınız gayet başarılı oldu. İlk defa kod yazdım excelde sayenizde . bir soru daha sorsam yuklemiş oldğum resimdeki gibi Ayın hergunu için 1 çalışma sayfası mevcut Güncellemiş olduğum kodları tek tek sayfalara girmelimiyim yoksa kısa bir yolu varmıdır ?


en sonki hali şu şekilde

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [H8:H31,I8:I31]) Is Nothing Then Exit Sub
Application.EnableEvents = False
On Error Resume Next
Target.Value = Target.Value / 1000
Application.EnableEvents = True

End Sub
 
Son düzenleme:
Kodları, ThisWorkBook (BuÇalışmaKitabı) içine alınız. Şöyle olmalı;

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Intersect(Target, [A1:A100]) Is Nothing Then Exit Sub
Application.EnableEvents = False
On Error Resume Next
Target.Value = Target.Value / 1000
Application.EnableEvents = True
End Sub
 
. . .

Örnek dosya ektedir. Geliştirmesi size kalmış.
A1:A100 aralığana girilen sayısal değerleri 1000' e böler. (sarı dolgulu alan)



Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A1:A100]) Is Nothing Then Exit Sub
Application.EnableEvents = False
On Error Resume Next

Target.Value = Target.Value / 1000

Application.EnableEvents = True
End Sub

. . .


Ekteki dosyanın B1:100, C1:100 hücrelerine bu makroyu uygulayıp linki yenileyebilir misiniz?
 
Ekteki dosyanın B1:100, C1:100 hücrelerine bu makroyu uygulayıp linki yenileyebilir misiniz?
. . .

Kırmızı ile belirttiğim satırı şu şekilde değiştiriniz.
Daha sonra B ve C sütunlarının sayı biçimlendirmesinde ondalık rakamını 3 yapın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
[COLOR="Red"]If Intersect(Target, [B][B1:B100,C1:C100][/B]) Is Nothing Then Exit Sub[/COLOR]
Application.EnableEvents = False


. . .
 
. . .

Kırmızı ile belirttiğim satırı şu şekilde değiştiriniz.
Daha sonra B ve C sütunlarının sayı biçimlendirmesinde ondalık rakamını 3 yapın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
[COLOR="Red"]If Intersect(Target, [B][B1:B100,C1:C100][/B]) Is Nothing Then Exit Sub[/COLOR]
Application.EnableEvents = False


. . .

Çok şükür tamamdır, teşekkürler
 
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Intersect(Target, [A1:A100]) Is Nothing Then Exit Sub
Application.EnableEvents = False
On Error Resume Next
Target.Value = Target.Value / 1000
Application.EnableEvents = True
End Sub[/QUOTE]

çok teşekkurler emeğnize sağlık :)
Peki aynı komuta Mesela K1:K100 arasını da 1000 e değilde 100 e bölebilirmiyiz ben araya kaynaştırmaya çalıştım ama beceremedım gereklı kodlamayı bilmiyorum açıkçası.
 
Geri
Üst