Merhaba,
sütunları text dosyaya atan ve text dosyayı c:\ dizinine kaydeden bir excelim var ancak Exceldeki macro XP'de çalışıp dosyayı kaydederken Vista'da Macro çalışıyor ancak C'de dosya oluşturmuyor. Yardımcı olabilir misiniz Macro aşağıdaki gibidir.
NOT: Macro seviyesi en düşük durumdadır
Sanırım Vistada güvenlikle ilgili bir şey yapmalıyım
Sub olustur()
Dim bayi, kod, TODAY As String
Dim DAY As String
DAY = Cells(1, 7).Value
TODAY = "LISTE"
t_sayac = 2
For i = 2 To 10000
If Cells(i, 1).Value = "" And Cells(i, 2).Value = "" And Cells(i, 3).Value <> "" Then Cells(i, 1).Value = "000000000" And Cells(i, 2).Value = "0000"
If Cells(i, 1).Value = "" And Cells(i, 2).Value <> "" And Cells(i, 3).Value = "" Then Cells(i, 1).Value = "000000000" And Cells(i, 3).Value = "0000000"
If Cells(i, 1).Value <> "" And Cells(i, 2).Value = "" And Cells(i, 3).Value = "" Then Cells(i, 2).Value = "0000" And Cells(i, 3).Value = "0000000"
If Cells(i, 1).Value = "" And Cells(i, 2).Value <> "" And Cells(i, 3).Value <> "" Then Cells(i, 1).Value = "000000000"
If Cells(i, 1).Value <> "" And Cells(i, 2).Value = "" And Cells(i, 3).Value <> "" Then Cells(i, 2).Value = "0000"
If Cells(i, 1).Value <> "" And Cells(i, 2).Value <> "" And Cells(i, 3).Value = "" Then Cells(i, 3).Value = "0000000"
Next i
TODAY = "LISTE"
t_sayac = 2
Open "c:\" + TODAY + DAY + ".txt" For Output As #1
Do Until t_sayac = 1012
bayi = Format(Mid((Cells(t_sayac, 1).Value), 1, 9), "000000000")
tip = Format(Mid((Cells(t_sayac, 2).Value), 1, 4), "0000")
kod = Format(Mid(Cells(t_sayac, 3).Value, 1, 7), "0000000")
If Mid(Cells(t_sayac, 1).Value, 1, 1) = "" Then t_sayac = t_sayac + 1: GoTo devam
If Mid(Cells(t_sayac, 1).Value, 1, 1) = " " Then t_sayac = t_sayac + 1: GoTo devam
If Mid(Cells(t_sayac, 2).Value, 1, 1) = "" Then t_sayac = t_sayac + 1: GoTo devam
If Mid(Cells(t_sayac, 2).Value, 1, 1) = " " Then t_sayac = t_sayac + 1: GoTo devam
If Mid(Cells(t_sayac, 3).Value, 1, 1) = "" Then t_sayac = t_sayac + 1: GoTo devam
If Mid(Cells(t_sayac, 3).Value, 1, 1) = " " Then t_sayac = t_sayac + 1: GoTo devam
yaz:
Print #1, bayi + " " + tip + " " + kod
t_sayac = t_sayac + 1
devam:
Loop
Close #1
GoTo enson
enson:
MsgBox "[ c:\" + TODAY + DAY + ".TXT ] DOSYASI HAZIRLANMIŞTIR..."
End Sub
sütunları text dosyaya atan ve text dosyayı c:\ dizinine kaydeden bir excelim var ancak Exceldeki macro XP'de çalışıp dosyayı kaydederken Vista'da Macro çalışıyor ancak C'de dosya oluşturmuyor. Yardımcı olabilir misiniz Macro aşağıdaki gibidir.
NOT: Macro seviyesi en düşük durumdadır
Sanırım Vistada güvenlikle ilgili bir şey yapmalıyım
Sub olustur()
Dim bayi, kod, TODAY As String
Dim DAY As String
DAY = Cells(1, 7).Value
TODAY = "LISTE"
t_sayac = 2
For i = 2 To 10000
If Cells(i, 1).Value = "" And Cells(i, 2).Value = "" And Cells(i, 3).Value <> "" Then Cells(i, 1).Value = "000000000" And Cells(i, 2).Value = "0000"
If Cells(i, 1).Value = "" And Cells(i, 2).Value <> "" And Cells(i, 3).Value = "" Then Cells(i, 1).Value = "000000000" And Cells(i, 3).Value = "0000000"
If Cells(i, 1).Value <> "" And Cells(i, 2).Value = "" And Cells(i, 3).Value = "" Then Cells(i, 2).Value = "0000" And Cells(i, 3).Value = "0000000"
If Cells(i, 1).Value = "" And Cells(i, 2).Value <> "" And Cells(i, 3).Value <> "" Then Cells(i, 1).Value = "000000000"
If Cells(i, 1).Value <> "" And Cells(i, 2).Value = "" And Cells(i, 3).Value <> "" Then Cells(i, 2).Value = "0000"
If Cells(i, 1).Value <> "" And Cells(i, 2).Value <> "" And Cells(i, 3).Value = "" Then Cells(i, 3).Value = "0000000"
Next i
TODAY = "LISTE"
t_sayac = 2
Open "c:\" + TODAY + DAY + ".txt" For Output As #1
Do Until t_sayac = 1012
bayi = Format(Mid((Cells(t_sayac, 1).Value), 1, 9), "000000000")
tip = Format(Mid((Cells(t_sayac, 2).Value), 1, 4), "0000")
kod = Format(Mid(Cells(t_sayac, 3).Value, 1, 7), "0000000")
If Mid(Cells(t_sayac, 1).Value, 1, 1) = "" Then t_sayac = t_sayac + 1: GoTo devam
If Mid(Cells(t_sayac, 1).Value, 1, 1) = " " Then t_sayac = t_sayac + 1: GoTo devam
If Mid(Cells(t_sayac, 2).Value, 1, 1) = "" Then t_sayac = t_sayac + 1: GoTo devam
If Mid(Cells(t_sayac, 2).Value, 1, 1) = " " Then t_sayac = t_sayac + 1: GoTo devam
If Mid(Cells(t_sayac, 3).Value, 1, 1) = "" Then t_sayac = t_sayac + 1: GoTo devam
If Mid(Cells(t_sayac, 3).Value, 1, 1) = " " Then t_sayac = t_sayac + 1: GoTo devam
yaz:
Print #1, bayi + " " + tip + " " + kod
t_sayac = t_sayac + 1
devam:
Loop
Close #1
GoTo enson
enson:
MsgBox "[ c:\" + TODAY + DAY + ".TXT ] DOSYASI HAZIRLANMIŞTIR..."
End Sub