• DİKKAT

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

Sayfadan userforma ondalık sayı olarak çekmek

Katılım
2 Ekim 2013
Mesajlar
347
Excel Vers. ve Dili
ofis 2019 türkçe
windows 10 pro türkçe
1) Arkadaşlar userformdan girdiğim sayılar ilgili excel sayfasında (SABİT) formüllerle ondalık sayı tipinde sonuçlar veriyor. 145.654 ya da 1.625 gibi (virgülden sonra kuruş hesabı yapmasın)

Bu sonuçları userforma aktardığımda se düz sayı geliyor 145654 ya da 1625 gibi
çektiğim formül bu.
EYLKP = Worksheets("SABİT").Cells(2, 16)
nereye ne yazarsam userformda binlik ayraçlı yazı tip olur

2) ilgili sayfada bir çok formül (çokeğersay, çoketopla, düşeyara) var.
Bu formüller bir tabloyu şekillendiriyor. Bu tablonun verilerine anlık ihtiyacım yok. bu şekilde kaydetme işini yavaşlatıyor.
O tablodaki formüller kaydetme sırasında etkin olmasa da sadece bir butona basınca etkin olsa kaydetmem hızlanacak.
Anlık sonuçlara ihtiyacım yok. Programda bir sayfayı istediğim zaman etkinleştirmek/pasifleştirmek mümkün mü? ya da başka yol
 
Merhaba,

Binlik ayıracak için aşağıdakilerden birisini deneyiniz.

EYLKP = Format(Worksheets("SABİT").Cells(2, 16), "#,##0.00")

EYLKP = Worksheets("SABİT").Cells(2, 16).Text

Formüller yoğunsa yavaş çalışması normaldir. Hesaplama yöntemini ELLE şeklinde ayarlayarak çalışmaya hız kazandırabilirsiniz. Eğer kaydetme anında bir katkı sağlamazsa sadece ilk satırda formül kalacak şekilde formülleri saldırıp sonra dosyayı kaydettirin. Böylece tek satırda formül olacağı için hızlı işlem yapacaktır. Kaydetme işleminden sonra ilk satırdaki formülleri tekrar alana yazdıracak sonuç alabilirsiniz.

Ya da formüllerin yaptığı işlemlerin hepsini makro ile yaparak tüm formüllerden kurtulabilirsiniz. Böylece dosyanız çok hızlı çalışacaktır.
 
Teşekkür ederim, ikinci yöntem işimi gördü

Merhaba,

Binlik ayıracak için aşağıdakilerden birisini deneyiniz.

EYLKP = Format(Worksheets("SABİT").Cells(2, 16), "#,##0.00")

EYLKP = Worksheets("SABİT").Cells(2, 16).Text

Formüller yoğunsa yavaş çalışması normaldir. Hesaplama yöntemini ELLE şeklinde ayarlayarak çalışmaya hız kazandırabilirsiniz. Eğer kaydetme anında bir katkı sağlamazsa sadece ilk satırda formül kalacak şekilde formülleri saldırıp sonra dosyayı kaydettirin. Böylece tek satırda formül olacağı için hızlı işlem yapacaktır. Kaydetme işleminden sonra ilk satırdaki formülleri tekrar alana yazdıracak sonuç alabilirsiniz.

Ya da formüllerin yaptığı işlemlerin hepsini makro ile yaparak tüm formüllerden kurtulabilirsiniz. Böylece dosyanız çok hızlı çalışacaktır.
 
Worksheets("ANATABLO").Cells(DDG, 11) = AMIKTAR.Value

peki böyle bir formülde, miktar olarak yazılan 1654 şeklindeki sayıyı 1.654 olarak tabloya kaysdetmek istesek nresine ne yazacağız?
Worksheets("ANATABLO").Cells(DDG, 11).text = AMIKTAR.Value işe yaramadı
Merhaba,

Binlik ayıracak için aşağıdakilerden birisini deneyiniz.

EYLKP = Format(Worksheets("SABİT").Cells(2, 16), "#,##0.00")

EYLKP = Worksheets("SABİT").Cells(2, 16).Text

Formüller yoğunsa yavaş çalışması normaldir. Hesaplama yöntemini ELLE şeklinde ayarlayarak çalışmaya hız kazandırabilirsiniz. Eğer kaydetme anında bir katkı sağlamazsa sadece ilk satırda formül kalacak şekilde formülleri saldırıp sonra dosyayı kaydettirin. Böylece tek satırda formül olacağı için hızlı işlem yapacaktır. Kaydetme işleminden sonra ilk satırdaki formülleri tekrar alana yazdıracak sonuç alabilirsiniz.

Ya da formüllerin yaptığı işlemlerin hepsini makro ile yaparak tüm formüllerden kurtulabilirsiniz. Böylece dosyanız çok hızlı çalışacaktır.
 
Aslında birinci önerimde aşağıdaki gibi olursa ise yarar. Mesajı yazarken düzeltmeyi atlamışım.

EYLKP = Format(Worksheets("SABİT").Cells(2, 16), "#,##0")

Veriyi yazdırdığınız excel hücresinin biçimini değiştirerek çözüm bulabilirsiniz. Bu işlemi ilgili sütunu seçerek hücre biçimlendirme menüsünden Binlik ayraç olacak şekilde biçimlendirerek kökünden çözebileceğiniz gibi, her veri aktarımında hücreyi makro ile biçimlendirerekte çözebilirsiniz.

Worksheets("ANATABLO").Cells(DDG, 11) = AMIKTAR.Value
Worksheets("ANATABLO").Cells(DDG, 11).NumberFormat = "#,##0"

Sanırım yeni bir uygulama yapıyorsunuz. Linkteki konuları incelerseniz sorularınızın cevaplarını bulacağınızı düşünüyorum.


 
Geri
Üst