Ne zaman özel bir hücre formatına bir nokta karakteri koyduğumda, Excel onu formatın o konumunda bir ondalık ayırıcı istiyormuş gibi yorumlayacak . Ondalık ayırıcının olması sorunu yerel ayarlarla değişir. Aslında sadece bir nokta istiyorum.
İşte işe yaramayacak örnek bir format:
hh:mm:ss.000
(işe yaramaz çünkü yerel ayar, ondalık ayırıcı olarak noktadan başka bir şey kullanırsa 22:31:34,854
, biçimlendirilmiş değerinizde gibi bir şey görürsünüz )
Gibi bir şey denedim
hh:mm:ss\.000
Excel'in gerçekten bir nokta istediğimi anlamasını sağlamak için. Ancak Excel 2010 bunu geçerli bir format olarak kabul etmeyi reddediyor. (Bir yerde \
bir Excel formatı dizesinde bir karakterden kaçmanın bir yolu olduğunu okudum )
GÜNCELLEME (VE CEVAP TÜRÜ)
Microsoft'un resmi belgeleri, karakteri çift tırnak içine alarak veya ters eğik çizgiyle kaçarak, aksi takdirde meta karakter olarak yorumlanacak bir karakteri yazdırmak için bir biçim alabileceğinizi söylüyor. Örneğin, aşağıdaki format #.##0\.
1234'ü 1.234.
bir ABD yerel ayarında olduğu gibi formatlayacaktır . Örnek saçma olmasına rağmen bu, dönem karakterinden kaçmanın gerçekte işe yaradığını kanıtlar.
Peki neden milisaniye ile bir zaman damgası biçimi oluştururken çalışmıyor?
Bu sorunun cevabı, Microsoft'un biçim belirticilerini tasarlama biçiminde yatıyor. Bu meta karakterler (gibi 0
(sıfır)) çevrelerine bağlı olarak farklı yorumlara sahiptir. Bazı bağlamlarda 0
, her zaman o konumda bir rakam olması demektir. Gibi Yani, bir formatta üç tane sıfır gelmesiyle #0.000
, biçimlendirmek demektir 12
olarak 12.000
. Bununla birlikte, üç sıfır bir zaman formatından sonra yerleştirildiğinde, "milisaniye" anlamına gelir. Üç sıfırdan hemen önceki süreden kaçarsak, o zaman üç sıfır artık zaman biçimi belirticilerini "yakın" değildir ve Excel'in kafası karışır ve artık "milisaniye" veya basamak yer tutucusu mu demek istediğimizi belirleyemez. Dolayısıyla, formatı reddetmekten başka seçeneği yoktur. En azından bu neden işe yaramadığına dair yorumum.
Meta karakterleri biçimindeki bu belirsizlik, aslında tüm kötülüklerin kökenidir. Çeşitli programlama dilleriyle karşılaştırırsanız, daha önce hiç görmemiş olduğum bu dizge meta karakterinin içeriğe bağlı olarak farklı yorumlamaları olabileceğini görmedim. Bu durumda, Excel'in bir zaman biçimi oluşturabilmesinin bir yolu olmadığı anlamına gelmesi gerekir. Char karakterinin gizemli bir şekilde ,
zaman zaman (kullanıcının yerel ayarlarına bağlı olarak) değişebileceğini kabul etmeniz gerekir .
.
biçim dizesindeki yalnızca bir nokta yazdırmak yerine, ondalık ayırıcı anlamında yorumlayacağıdır .
hh:mm:ss.000
formatı kullanabilmekle ilgili değildir , noktanın gerçekten bir nokta olduğundan emin olmakla ilgilidir. Bahse girerim ondalık ayırıcınızın virgül dediği bir yerde test etmediniz ?? Öyleyse, Excel'in biçimlendirilmiş zaman çizelgenizi gibi bir şey olarak yazdıracağını fark edersiniz 06:33:55,872
ve istediğim bu değil . Sadece bir nokta istiyorum (tam anlamıyla).