• DİKKAT

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

Txt Dosyası Oluştur Butonu

Katılım
5 Temmuz 2010
Mesajlar
139
Excel Vers. ve Dili
türkçe
Ekli Dosyada "Giriş" Sayfasında girilen bilgiler "Txt Dosyası" Sayfasına formül yardımıyla aktarılmaktadır. "Txt Dosyası" Sayfasını ise her seferinde (masa üstüne)Txt Dosyası olarak Kaydetmem gerekiyor. Bu işlemi yukarıya yerleştirdiğim buton vasıtasıyla yapmak istiyorum. Ama bir türlü beceremedim.
Yardımcı olur musunuz acaba ?
 

Ekli dosyalar

Ekli Dosyada "Giriş" Sayfasında girilen bilgiler "Txt Dosyası" Sayfasına formül yardımıyla aktarılmaktadır. "Txt Dosyası" Sayfasını ise her seferinde (masa üstüne)Txt Dosyası olarak Kaydetmem gerekiyor. Bu işlemi yukarıya yerleştirdiğim buton vasıtasıyla yapmak istiyorum. Ama bir türlü beceremedim.
Yardımcı olur musunuz acaba ?

Bu kodu denermisiniz.

Kod:
[COLOR=red]Option Explicit[/COLOR]
Sub aktar()
[COLOR=red]Dim klasor, dosyaadi, i, deger1, deger2, deger3, deger4, deger5, deger6[/COLOR]
klasor = CreateObject("wscript.Shell").SpecialFolders.Item("Desktop")
dosyaadi = Format(Now, "dd-mmm-yy h-mm-ss") & ".txt"
Open klasor & "\" & dosyaadi For Output As #1
For i = 2 To Worksheets(ActiveSheet.Name).Cells(Rows.Count, "a").End(3).Row
deger1 = Cells(i, 1).Value
deger2 = Cells(i, 2).Value
deger3 = Cells(i, 3).Value
deger4 = Cells(i, 4).Value
deger5 = Cells(i, 5).Value
deger6 = Cells(i, 6).Value
Print #1, deger1 & deger2 & deger3 & deger4 & deger5 & deger6
Next i
MsgBox "aktarma işi tamamlandı"
Close #1
End Sub
 
Ekteki hata mesajı geldi ama anlayamadım.
 

Ekli dosyalar

  • HATA.JPG
    HATA.JPG
    90.9 KB · Görüntüleme: 16
Gelen Hatada "klasor=" işaretliydi.

Değişkenleri tanımlamadığımdan hata alıyorsunuz.

Option Explicit olayını kaldırıp deneyin veya 2 nolu mesaja kırmızı eklediğim bölümü ile kodu yeniden çalıştırın.
 
Hocam çok pardon...
Ben "Txt Dosyası" Sayfasını Txt dosyası olarak kaydetmek istiyordum. Ama vermiş olduğunuz kodları butona atadığımda Giriş Sayfasını Txt Dosyası olarak kaydediyor, "Txt Dosyası" sayfasını değil. Şimdi uygulamadan sonra farkettim.

Kodları "Txt Dosyası" Sayfasını Txt dosyası olarak kaydedecek şekilde düzenleyebilirmiyiz ? Veya başka bir yol var mı?
 
Hocam çok pardon...
Ben "Txt Dosyası" Sayfasını Txt dosyası olarak kaydetmek istiyordum. Ama vermiş olduğunuz kodları butona atadığımda Giriş Sayfasını Txt Dosyası olarak kaydediyor, "Txt Dosyası" sayfasını değil. Şimdi uygulamadan sonra farkettim.

Kodları "Txt Dosyası" Sayfasını Txt dosyası olarak kaydedecek şekilde düzenleyebilirmiyiz ? Veya başka bir yol var mı?

kod

Kod:
Option Explicit
Sub aktar()
Dim klasor, dosyaadi, i
klasor = CreateObject("wscript.Shell").SpecialFolders.Item("Desktop")
dosyaadi = Format(Now, "dd-mmm-yy h-mm-ss") & ".txt"
Open klasor & "\" & dosyaadi For Output As #1
For i = 1 To Worksheets(ActiveSheet.Name).Cells(Rows.Count, "a").End(3).Row
Print #1, Cells(i, 1).Value
Next i
MsgBox "aktarma işi tamamlandı"
Close #1
End Sub
 
Hocam son verdiğiniz kodlar da "Txt Dosyası" Sayfası verilerini txt dosyasına dönüştürmüyor.
 
Hocam son verdiğiniz kodlar da "Txt Dosyası" Sayfası verilerini txt dosyasına dönüştürmüyor.

siz kodu giriş sayfasındayken aktarıyorsunuz Txt Dosyası sayfasındayken kodu çalıştırsaydınız kod düzgün çalışacaktı neyse aşağıdaki kod her sayfada çalışıyor.




Kod:
Option Explicit
Sub aktar()
Dim klasor, dosyaadi, i
klasor = CreateObject("wscript.Shell").SpecialFolders.Item("Desktop")
dosyaadi = Format(Now, "dd-mmm-yy h-mm-ss") & ".txt"
Open klasor & "\" & dosyaadi For Output As #1
For i = 1 To Worksheets("Txt Dosyası").Cells(Rows.Count, "a").End(3).Row
Print #1, Worksheets("Txt Dosyası").Cells(i, 1).Value
Next i
MsgBox "aktarma işi tamamlandı"
Close #1
End Sub
 
Kodlar harika çalışıyor. Ama bu konuyla ilgili olarak bir şey daha sormak istiyorum.
Kodları çalıştırınca Masaüstüne kaydediyor, otomatik olarak isim veriyor ya;
Bu dosyanın ismini bizim belirleme şansımız var mı acaba? Yani kaydederken dosyaya verilecek ismi sorsa ...
 
Kodlar harika çalışıyor. Ama bu konuyla ilgili olarak bir şey daha sormak istiyorum.
Kodları çalıştırınca Masaüstüne kaydediyor, otomatik olarak isim veriyor ya;
Bu dosyanın ismini bizim belirleme şansımız var mı acaba? Yani kaydederken dosyaya verilecek ismi sorsa ...

kod

Kod:
Option Explicit
Sub aktar()
Dim klasor, dosyaadi, i
klasor = CreateObject("wscript.Shell").SpecialFolders.Item("Desktop")
dosyaadi = InputBox("Dosya adını yazın.", "UYARI!", Format(Now, "dd-mmm-yy h-mm-ss"))
If dosyaadi = "" Then
MsgBox "Dosya adı boş olamaz"
Exit Sub
End If
Open klasor & "\" & dosyaadi & ".txt" For Output As #1
For i = 1 To Worksheets("Txt Dosyası").Cells(Rows.Count, "a").End(3).Row
Print #1, Worksheets("Txt Dosyası").Cells(i, 1).Value
Next i
MsgBox "aktarma işi tamamlandı"
Close #1
End Sub
 
Halit bey uzun süredir aradığım bir kodu yazmışsınız, ellerinize sağlık.

Yalnız excelden html uzantılı bir dosya oluşturduğum zaman
excelde A22 deki saldırı metnini html dosyasından açarken sald�r� olarak yapıyor.Sanırım türkçe dil kodlaması sorunu oluşuyor.Çözümü hakkında fikriniz var mı?
 

Ekli dosyalar

Halit bey uzun süredir aradığım bir kodu yazmışsınız, ellerinize sağlık.

Yalnız excelden html uzantılı bir dosya oluşturduğum zaman
excelde A22 deki saldırı metnini html dosyasından açarken sald�r� olarak yapıyor.Sanırım türkçe dil kodlaması sorunu oluşuyor.Çözümü hakkında fikriniz var mı?

kodun bu bölümünü
Kod:
Print #1, Worksheets("Txt Dosyası").Cells(i, 1).Value
bununla değiştirin

Kod:
Print #1, Replace(Worksheets("Txt Dosyası").Cells(i, 1).Value, "ı", "i")
 
kodun bu bölümünü
Kod:
Print #1, Worksheets("Txt Dosyası").Cells(i, 1).Value
bununla değiştirin

Kod:
Print #1, Replace(Worksheets("Txt Dosyası").Cells(i, 1).Value, "ı", "i")

Halit bey teşekkürler
 
Geri
Üst