Excel içinden, notepad ile işlem.

lark

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2004
Mesajlar
323
Excel Vers. ve Dili
Excel 2021 / Türkçe
Merhaba,
Excel VBA ile, bir directory'deki belirli dosyaları excel'de listeledikten sonra, bunları döngüye sokup notepad'da açarak, kodlaması ne olursa olsun, "farklı kaydet" ile kendi üzerine "bom ile utf-8" kodlamalı olarak kaydetmesini sağlamaya çalışıyorum.
Dosyaları tek tek, "shell" ve "sendkeys" ile yapabiliyorum ama döngüye soktuğumda ve işin içine değişken girince yapamıyorum.
Bu konuda yardımcı olabilecek var ise memnun olurum.
Teşekkürler.
 

lark

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2004
Mesajlar
323
Excel Vers. ve Dili
Excel 2021 / Türkçe
Cevaba, teşekkür ederim. Notepad ile çözüme yoğunlaşmıştım. Böylesi daha iyi tabii ki; basit de görünüyor ancak, saatlerdir uğraştığım halde yapamadım maalesef.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,241
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
PHP:
Sub Test_With_BOM()
    'Zeki Gürsoy'
  
    Dim stream As Object
  
    Set stream = CreateObject("ADODB.Stream")
  
    stream.Charset = "UTF-8"
    stream.Open
    stream.LoadFromFile "c:\users\user\desktop\noBOM.txt"
  
    stream.SaveToFile "c:\users\user\desktop\withBOM.txt"
    stream.Close
  
  
    'Byte lar BOM (Byte Order Mark) ile
    'gelmiş mi kontrol edelim...
    Dim bytes(1 To 5) As Byte
  
    Open "c:\users\user\desktop\withBOM.txt" For Binary As #1       
        Get #1, , bytes
    Close
  
    For Each b In bytes
        Debug.Print b; " --> "; Chr(b)
    Next
  
End Sub
.
 

lark

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2004
Mesajlar
323
Excel Vers. ve Dili
Excel 2021 / Türkçe
Çok teşekkür ederim, emeğinize sağlık.
Çalıştı ancak, mantığını bir türlü çözemedim. Dosya zaten utf-8. "BOM"'u ekleyen satır ve komut nedir, anlayamadım.
Çok vaktinizi almak da istemiyorum fakat son bir yardımınızı isteyebilir miyim.
Teşekkürler.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,241
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
ADOB.Stream nesnesi, kendiliğinden BOM ekliyor olabilir... Zaten dünyada da ağırlıklı olarak Without BOM olarak sorular yöneltilmiş.
UTF8 veya ANSI birer byte yer kaplar; BOM içermez. Local karakterlerin kodları farklıdır o kadar.

.
 

lark

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2004
Mesajlar
323
Excel Vers. ve Dili
Excel 2021 / Türkçe
Anladım.
Çok teşekkür ederim tekrar.
 
Üst