Hücrede görünen değer tek başına yeterli değil

Yapay zekâdan kısa notlarınızı CSV tablosuna dönüştürmesini istediniz. Notlardan biri =1+1 biçiminde bir metin. Dosyayı açtığınızda aynı yerde 2 görüyorsunuz. Sayı aritmetik olarak doğru olabilir, fakat sizin veriniz artık aynı veri değildir. Buradaki amaç işlem hesaplamak değil, yazılmış ifadeyi olduğu gibi saklamaktır. Kontrolü görüntülenen sonuca bakarak kapatırsanız bu değişimi kaçırabilirsiniz.

CSV bir çalışma kitabı gibi hücrelerin bütün tür özelliklerini saklamaz. Dosyanın metni ile onu açan uygulamanın verdiği anlamı ayrı düşünmek gerekir. Bir alanın CSV kurallarına göre tırnak içinde yazılması, tablo uygulamasının onu kesinlikle metin olarak tutacağı anlamına gelmez. Aynı dosya başka bir açma yolunda farklı yorumlanabilir.

OWASP, formül başlangıcı taşıyan alanların elektronik tablolarda formül olarak değerlendirilebildiğini ve bazı kaçış yöntemlerinin kaydetme ile yeniden açmada etkisini kaybedebildiğini açıklar. Bu yüzden tek bir karakter eklemeyi bütün uygulamalar için geçerli koruma saymıyoruz. Aşağıdaki beş hücre yalnızca zararsız bir eğitim örneğidir; dış bağlantı, komut veya gerçek kullanıcı verisi içermez.Kaynak: OWASP — CSV Injection

Beş ifadenin hepsini metin kabul edin

Sentetik ham kayıt · iki sütun, beş veri satırı
KimlikNot metniBeklenen tür
T01=1+1Metin
T02+2+3Metin
T03-4+2Metin
T04@notMetin
T05normal notMetin

Tablonun sözleşmesi bütün Not alanlarının metin olduğunu söylüyor. T03 başındaki eksi nedeniyle gerçek bir negatif ölçüm değildir; verilen ifade bir nottur. Sayısal ölçümler içeren başka bir veri kümesinde tüm eksi işaretlerini kaldırmak yanlış olurdu. Tür kararını ilk karakterin görünüşünden önce alanın amacına bağlayın. Ham alanları değiştirmeden koruyun.

Bu örnekte satır sayısı beş, kimlik sayısı beş ve Not alanında beklenen formül sayısı sıfırdır. Ancak bu üç toplam aynı anda doğru olsa bile metinlerin değişmediği ayrıca sınanmalıdır. =1+1 ifadesi metin olarak 2 yapılmışsa artık formül bulunmayabilir, fakat kaynak kaybı vardır. Hücre türü ve içerik eşitliği birbirini tamamlayan iki kontroldür.

Özgün aktarım sözleşmesi
Kaynak: Yukarıdaki T01–T05 eğitim kayıtları.
Kodlama: UTF-8. Ayırıcı: virgül. Başlıklar: Kimlik,Not.
Kimlik ve Not sütunları metin olarak alınacak.
Ham metne hesaplama, karakter silme veya otomatik düzeltme uygulanmayacak.
Hedef: türü korunmuş çalışma kitabı; yeniden açma kontrolü yapılacak.
Beklenen: 5 benzersiz kimlik, 5 değişmemiş Not, Not sütununda 0 formül.

Kaynak dosyayı önce yalnızca metin gösteren bir düzenleyicide incelemek, sütun ayırıcısını ve tırnak yapısını görmeyi sağlar. Bu eğitimde bir dosya indirilmez veya Excel çalıştırılmaz; tablolar beklenen davranışı tarif eder. Kendi uygulamanızda gözlemi gerçekten yapıp sürümü ve açma yolunu yazmadan bu taslağı başarılı aktarım kaydı diye işaretlemeyin.

İçe aktarımı açık türlerle kurun

Microsoft’un Power Query Text/CSV açıklaması, ayırıcı seçimini ve otomatik tür algılamasını kapatıp sütunları metin olarak almayı anlatır. Excel’de Veri Al içindeki Metin/CSV yoluyla başlayıp veriyi dönüştürme adımında iki sütunu da Metin olarak denetleyebilirsiniz. Menülerin adı ve seçeneklerin yeri sürüme göre değişebilir; önemli olan yüklemeden önce tür kararının açık olmasıdır.Kaynak: Microsoft — Power Query Text/CSV

  • Dosyaya çift tıklamak yerine tanımlı içe aktarma yolunu kullanın; UTF-8 ve virgül ayracını önizlemede doğrulayın.
  • Otomatik tür algılamasını kapatın veya eklenmiş tür değiştirme adımlarını inceleyin. İki sütunun da Metin olduğunu açıkça görün.
  • T01–T05 satırlarını hedefe yükleyin; kaynakla alan alan karşılaştırın. Dönüşümün metni hesaplamadığını sınayın.
  • Çalışma kitabını kaydedip yeniden açın; aynı kontrolleri tekrar uygulayın. Yeniden CSV dışa aktarımı ayrı bir sınamadır.

Yalnızca hücre biçimini sonradan Metin yapmak, daha önce hesaplanmış bir değerin özgün ifadesini geri getirmez. Önceki bir aktarımda =1+1 kaybolduysa 2 hücresini yeniden biçimlendirmek yeterli değildir; korunmuş ham kaynaktan yeniden almak gerekir. Bu ayrım, yanlış dönüşümün ardından görünümü düzeltip veriyi kurtardığınızı sanmanızı önler.

Metni koruyan aktarım inceleme istemi
T01–T05 sentetik tablosunu ve aktarım sözleşmesini kullan. Not alanlarını hesaplama veya düzeltme. Her satır için korunacak tam metni, beklenen hücre türünü ve kontrolü yaz. CSV tırnağını tür garantisi sayma. Çıktı: kimlik | ham metin | beklenen tür | doğrulama. Excel çalıştırdığını iddia etme; beklenen sonuç ile gerçek gözlem alanını ayrı tut. Yeniden kaydetme/açma sınamasını ekle.

Sıfır formül ile değişmemiş metni birlikte doğrulayın

Excel’in ISFORMULA işlevi, verilen hücrenin formül içerip içermediğini kontrol eder. Notlar B2:B6 aralığına yüklendiyse ayrı kontrol sütununda =ISFORMULA(B2) ifadesini aşağı uygulamak bu durumu sınar. İşlev adı burada İngilizcedir; yerel Excel adlandırmasını kullanmanız gerekebilir. Kontrol formülünün bulunduğu sütunla kontrol edilen Not sütununu sayımda karıştırmayın.Kaynak: Microsoft — ISFORMULA

Elle hazırlanmış beklenen kontrol · gerçek Excel sonucu değildir
Kayıtlarİçerik kontrolüNot hücresinde ISFORMULAGözlem durumu
T01–T04Başlangıç işareti dahil ham ifadeyle aynıFALSEUygulamada sınanacak
T05normal not aynen korunmuşFALSEUygulamada sınanacak
Bütün kayıtlar5 kimlik, 5 not; değişiklik yok0 TRUEYeniden açınca tekrarlanacak

Bu işlev metnin doğru korunduğunu tek başına söylemez. Formül olmayan yanlış bir metin de FALSE verir. Bu nedenle kontrol kaydına ham ve hedef alanı birlikte koyun; karakterlerin, boşlukların ve kimlik eşleşmesinin aynı kaldığını inceleyin. Görüntünün sütun darlığı yüzünden kısalmasıyla gerçek içeriğin kısalmasını da ayırın; hücrenin tamamını kontrol edin.

Küçük alıştırma: T06 için kaynak notu =3+4 olsun. Beklenen veri sayısı altı, metin notu sayısı altı ve Not sütunundaki formül sayısı yine sıfırdır. T06 hücresinde 7 görürseniz işlemi doğru yaptı diye kabul etmeyin. Ham ifadeye dönüp aktarım adımını inceleyin; diğer beş satırı doğru oldukları varsayımıyla kontrol dışında bırakmayın.

Son kayıt, kullanılan uygulama ve sürüm, içe aktarma ayarları, kaynak-hedef karşılaştırması ve yeniden açma gözlemini taşımalıdır. Böylece yapay zekânın ürettiği düzenli CSV ile gerçekten korunmuş veri arasındaki fark izlenebilir olur. Başka bir uygulamaya gönderirken de aynı sonucu beklemek yerine o aktarım yolunu kendi koşullarıyla yeniden sınayabilirsiniz.

Kaynaklar ve doğrulama

  • OWASP — CSV Injection

    Formül başlangıçları, tırnakların sınırı ve kaydetme/yeniden açmada değişebilen yorumlama.

    Erişim ve kontrol:
  • Microsoft — Power Query Text/CSV

    Ayırıcı ve tür algılama seçimi; otomatik algılamayı kapatıp metin türüyle içe aktarma.

    Erişim ve kontrol:
  • Microsoft — ISFORMULA

    Bir hücrenin formül içerip içermediğini sınama.

    Erişim ve kontrol:

İlgili okumalar

Üretken Yapay Zekâ ile İş Verimliliği

Üretken Yapay Zekâ ile İş Verimliliği programındaki veri çalışmalarına, aktarım öncesi ve sonrası aynı metni koruyan bu kontrol tablosuyla hazırlanabilirsiniz.

  • Bireysel tarih henüz açıklanmadı