• DİKKAT

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

Uzantılar

Katılım
1 Mart 2005
Mesajlar
32
Merhabalar
Combobox'uma aldıgım dosya listesinin uzantılarını gizleyebilirmiyim?
Ã?rnegim Deneme.Xls yerine sadece Deneme yazabilmisi mümkünmü?
 
aşağıdaki gibi bir deneyin. Dosyaadi sizin .xls uzantılı adınız.
left(DosyaAdi, len(Dosyaadi) - 4)
 
Combobox'umda rowsource'm var Yani Dosya ismi sabit degil ve tam olarak kodu nereye yazmalıyım initializie ye yazdıgım zaman form açılmıyor.
 
Dosya ismi sabit degil derken onlarca dosya var yani A1 hücresine istedigim dosyanın adını seçip veriyorum ama uzantılı olunca hoş olmuoyr açıkçası...
 
1 - Rowsource'a dosya isimlerini uzantısız yazabilir/aldırabilirsiniz
2- verdiğim formülü mevcut rowsouceın yanındaki sütuna yazıp sadece ismi elde eder ve rowsource olarak bunu tanımlarsınız
 
Hocam kodlar böyle tam olarak ne yapmalıyım?

Private Sub UserForm_Initialize()
ComboBox1.ListRows = 5
ComboBox1.ListStyle = fmListStyleOption
ComboBox1.RowSource = "Sayfa2!A1:A200"
End Sub
 
en açık şekilde böyle olur ;

[vb:1:da3fc04e47]Private Sub UserForm_Initialize()
ComboBox1.ListRows = 5
ComboBox1.ListStyle = fmListStyleOption
For Each cell In Range("a1:a200")
c = ""
If cell.Value <> "" Then
a = cell.Value
b = Len(cell.Value) - 4
c = Left(a, b)
End If
If c <> "" Then ComboBox1.AddItem c
Next
End Sub[/vb:1:da3fc04e47]
 
Dikkatiniz için teşekkür ediyorum. Netleştirelim: kullandıgım kodda verileri diger sayfaya aktarıp oradan alıyordum.

Sub DirFonk()
Worksheets("Sayfa2").Select
Dim Dosya
Dim i As Integer
Dosya = Dir("*.XLS")
i = 1
While Dosya <> ""
Dosya = Dir
Cells(i, 1) = Dosya
i = i + 1
Wend
End Sub
 
kullandıgım kodda verileri diger sayfaya aktarıp oradan alıyordum.
Bunu ilk baştan yazsaydınız,az önce yazdığım mesaja(Sildim) gerek kalmaz ve sorunuza daha çabuk cevap alırdınız...
Forumda sorularınızı toparlıyarak ve ne yapmak istediğinizi anlatarak açıklamakta fayda var derim.
Sonuçta Sayfa2 aldığınız verileri .xls uzantılarını;
Sayın ldanersin, 'in yöntemi ile alabileceğiniz gibi,
Kod:
Sub ayır()
   Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
        :=".", FieldInfo:=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True
End Sub
İle Sayfa 2'deki verilerin uzantılarını silebilirsiniz.
 
Yada Mevcut kodunuzdaki;
Cells(i, 1) = Dosya
satırı yerine ;
cells(i,1)=Left(Dosya, len(Dosya) - 4)

ilk başta dediğim gibi.
 
Geri
Üst