- Katılım
- 25 May 2018
- Mesajlar
- 1,618
- En iyi yanıt
- 14
- Puanları
- 113
- Konum
- İstanbul
- Web sitesi
- excelarsivi.com
- Ad Soyad
- Murat OSMA
- Office Vers.
- Microsoft 365 TR+EN
DOSYALAMA ve VERİTABANI FONKSİYONLARI
Open "Dosya Adı ve Yolu" For [Açma Metodu] Access [Erişim Modu] [lock] As # [Dosya Numarası] Len [Kayıt Uzunluğu]
OPEN (Dosya Açmak), CLOSE (Dosya Kapatmak)
Open "..." For Input As #1
Open "..." For Binary Access Write As #1
Open "..." For Output Shared As #1
Open "..." For Binary Access Read Lock Read As #1
Open "..." For Random As #1 Len = Len(Kayit)
Close #[DosyaNo]
Örnek Kodlar
	
	
	
		
	
	
	
		
	
	
	
		
	
	
	
		
	
	
	
		
	
	
	
		
	
	
	
		
	
	
	
		
	
	
	
		
	
	
	
		
EOF FONKSİYONU
	
	
	
		
LINE INPUT FONKSİYONU
	
	
	
		
INPUT FONKSİYONU
	
	
	
		
LOF FONKSİYONU
	
	
	
		
	
	
	
		
Loc FONKSİYONU
	
	
	
		
Append (FreeFile) FONKSİYONU
	
	
	
		
	
	
	
		
	
	
	
		
PUT FONKSİYONU
Put # [Dosya No], [Kayıt No], geçici dosya değişkeni
GET FONKSİYONU
Get # [Dosya No], [Kayıt No], geçici dosya değişkeni
SEEK FONKSİYONU
Seek # [Dosya No], pozisyon
								Open "Dosya Adı ve Yolu" For [Açma Metodu] Access [Erişim Modu] [lock] As # [Dosya Numarası] Len [Kayıt Uzunluğu]
| Dosya Adı ve Yolu | Açmak istediğiniz dosyanın bulunduğu dizin ve adıdır. | 
| Açma Modu | Dosyaların açılacağı yöntemi belirlemek için kullanılır. Bunlar sırasıyla; Random, Binary, Input, Output, Append modlarıdır. | 
| Random Modu | Kayıtlar dosyaya yazılırken, belirtilen kayıt uzunluğuna göre yazılırlar. Kaydedilen veri ister belirlenen uzunluktan az, isterse fazla olsun, dosyada kaplayacağı alan belirtilen kayıt uzunluğu kadardır. | 
| Binary Modu | Kayıtlar dosyaya bu modda yazdırıldığı zaman, ulaşmak istediğiniz karaktere karakterin numarasını vererek ulaşabilirsiniz. Diğer modların aksine bu mod kayıtlara sadece bir bütün olarak değil, karakter karakter olarak ulaşabilir. | 
| Input Modu | Sıralı erişim olan bu mod, dosyadaki kayıtları okumak için kullanılır. | 
| Output Modu | Bu da sıralı erişim modudur. Input’un tersine bu mod dosyaya yazdırmak için kullanılır. | 
| Append Modu | Input ve Output modları gibi sıralı erişimi olan bir moddur. Bu modun Output’tan tek farkı dosya göstericisinin dosyanın sonunda durmasıdır. En son yazılan kayıt, dosyanın en sonuna eklenecektir. | 
| Erişim Modu | Dosyanın açılacağı parametreyi belirler. 3 ayrı erişim modu bulunmaktadır. Read, Write, Read Write | 
| Read Modu | Dosyayı salt okunur olarak açmak için kullanılır. | 
| Write Modu | Dosyaya sadece yazmak için kullanılır. | 
| Read Write Modu | Dosyaya hem okumak hem de yazmak için kullanılır. | 
| Lock | Dosyanın açılması sağlandığında, farklı programların bu dosyaya erişimini engellemek için kullanılır. | 
| Shared | Diğer programlar dosyayı hem açar, hem de yazarlar. | 
| Read | Diğer programlar sadece yazabilirler, okuyamazlar. | 
| Write | Diğer programlar sadece okuyabilirler, yazamazlar. | 
| Read Write | Diğer programlar okuyamaz ve yazamazlar. | 
| Dosya Numarası | Dosyanın kayıt (1-511) numarası denilebilir. Her açılan dosyaya bir numara verilir ve dosyaya ulaşmak istenildiğinde bu numara kullanılır. | 
| Kayıt Uzunluğu | Dosyaya kaydedilecek verinin [Veri Uzunluğu <= 32767 (bytes)] uzunluğunu belirler. | 
OPEN (Dosya Açmak), CLOSE (Dosya Kapatmak)
Open "..." For Input As #1
Open "..." For Binary Access Write As #1
Open "..." For Output Shared As #1
Open "..." For Binary Access Read Lock Read As #1
Open "..." For Random As #1 Len = Len(Kayit)
Close #[DosyaNo]
Örnek Kodlar
		PHP:
	
	Sub ExcelTurkey()
    Open "C:\ETF.txt" For Output As #1
    Print #1, "Www.ExcelTurkey.Com"
    Close #1
End Sub
		PHP:
	
	Sub ExcelTurkey()
    Dim i As Integer
    Open "C:\ETF.txt" For Output As #1
    For i = 1 To 10
        Print #1, "Www.ExcelTurkey.Com"
    Next i
    Close #1
End Sub
		PHP:
	
	Sub ExcelTurkey()
    Open "C:\ETF.txt" For Output As #1
    Print #1, "Www.ExcelTurkey.Com", "Excel ile Makro Kodlama", destek@excelturkey.com
    Close #1
End Sub
		PHP:
	
	Sub ExcelTurkey()
    Dim i As Integer
    For i = 1 To 4
        Open "C:\Excel" & i & ".txt" For Output As #i
            Print #i, "Www.ExcelTurkey.Com"
        Close #i
    Next i
End Sub
		PHP:
	
	Sub ExcelTurkey()
    Open "C:\ETF.TXT" For Output As #1
        Print #1, "Www.ExcelTurkey.Com", "Excel ile Makro Kodlama", destek@excelturkey.com
    Close #1
End Sub
		PHP:
	
	Sub ExcelTurkey()
    Open "C:\ETF.txt" For Output As #1
        Print #1, Worksheets("Sayfa1").Cells(1, 1).Value
    Close #1
End Sub
		PHP:
	
	Sub ExcelTurkey()
    Open "C:\ETF.txt" For Output As #1
        For i = 1 To 10
            Print #1, Cells(i, 1), Cells(i, 2)
        Next i
    Close #1
End Sub
		PHP:
	
	Sub Osma6()
    Dim veri1 As String * 60
    Dim veri2 As String * 60
    Dim veri3 As String * 60
    Open "C:\ETF.txt" For Random As #1 Len = 60
        veri1 = "Www.ExcelTurkey.Com"
        veri2 = "Excel Destek Forumu"
        veri3 = destek@excelturkey.com
        Put #1, 1, veri1
        Put #1, 2, veri2
        Put #1, 3, veri3
    Close #1
End Sub
		PHP:
	
	Sub DosyayaYazdir_Write()
    satir = 1
    Open "C:\ETF" For Output As #1
        satir = Worksheets("Sayfa1").Range("A1").CurrentRegion.Rows.Count
        For i = 1 To satir
            Write #1, Cells(i, 1), Cells(i, 2), Cells(i, 3), Cells(i, 4)
        Next i
    Close #1
End Sub
		PHP:
	
	Sub DosyayaYazdir_Print()
    satir = 1
    Open "C:\ETF.csv" For Output As #1
    satir = Worksheets("Sayfa1").Range("A1").CurrentRegion.Rows.Count
    For i = 1 To satir
        Print #1, Cells(i, 1), Cells(i, 2), Cells(i, 3), Cells(i, 4)
    Next i
    Close #1
End SubEOF FONKSİYONU
		PHP:
	
	Sub DosyadanAl_EOF()
    satir = 1
    Open "C:\ETF.csv" For Input As 1
    Do While Not EOF(1)
        Line Input #1, kayit1
        If kayit1 <> Empty Then
            Cells(satir, 1) = kayit1
            satir = satir + 1
        End If
    Loop
    Close #1
End SubLINE INPUT FONKSİYONU
		PHP:
	
	Sub DosyadanAl_LINE_INPUT()
    satir = 1
    Open "C:\Etf.csv" For Input As 1
        Do While Not EOF(1)
            Line Input #1, kayit1
            If kayit1 <> Empty Then
                Cells(satir, 1) = kayit1
                satir = satir + 1
            End If
        Loop
    Close #1
    Cells(1, 1).CurrentRegion.TextToColumns DataType:=xlDelimited, Comma:=True
End SubINPUT FONKSİYONU
		PHP:
	
	Sub DosyadanAl_INPUT()
    satir = 1
    Open "C:\Murat.csv" For Input As #1
        Do While Not EOF(1)
            Input #1, kayit1
            If kayit1 <> Empty Then
                Input #1, kayit2, kayit3, kayit4
                Cells(satir, 1) = kayit1
                Cells(satir, 2) = kayit2
                Cells(satir, 3) = kayit3
                Cells(satir, 4) = kayit4
                satir = satir + 1
            End If
        Loop
    Close #1
End SubLOF FONKSİYONU
		PHP:
	
	Sub DosyaUzunlugu_LOF1()
    Open "C:\ETF.csv" For Input As #1
        dosyaUzun = LOF(1)
    Close #1
    MsgBox "Deneme1.csv dosyası " & dosyaUzun & " bytedir."
End Sub
		PHP:
	
	Sub DosyaUzunlugu_LOF2()
    For i = 1 To 6
        Open "C:\ETF" & i & ".txt" For Input As #i
            dosyaUzun = LOF(i)
        Close #i
        Cells(i, 1).Value = "SeriDeneme" & i & ".txt"
        Cells(i, 2).Value = dosyaUzun
    Next i
End SubLoc FONKSİYONU
		PHP:
	
	Sub LocFonk()
    Open "C:\ETF.csv" For Binary As #1
        Do While uzunluk
            Veri = Veri & Input(1, #1)
            uzunluk = Loc(1)
            Cells(1, 1) = Veri
            Cells(1, 2) = uzunluk
        Loop
    Close #1
End SubAppend (FreeFile) FONKSİYONU
		PHP:
	
	Sub YeniVeriEkle1()
    Open "C:\ETF.txt" For Append As #1
        Print #1, "Www.ExcelTurkey.Com"
    Close #1
End Sub
		PHP:
	
	Sub YeniVeriEkle2()
    Open "C:\ETF.txt" For Append As #1
        Print #1, Range("A1")
    Close #1
End Sub
		PHP:
	
	Sub YeniVeriEkle3()
    Open "C:\ETF.txt" For Append As #1
        Print #1, Range("B1"), Range("B2"), Range("B3"), Range("B4")
    Close #1
End SubPUT FONKSİYONU
Put # [Dosya No], [Kayıt No], geçici dosya değişkeni
GET FONKSİYONU
Get # [Dosya No], [Kayıt No], geçici dosya değişkeni
SEEK FONKSİYONU
Seek # [Dosya No], pozisyon
								
									Moderatör tarafında düzenlendi: 
								
							
						
						
	
					 
				