• DİKKAT

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

ComboBox'ta Çalışma Kitabı Sıralamak

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,652
Excel Vers. ve Dili
Excel : 2010
Selamün Aleyküm,
Arkadaşlar, aşağıda gördüğünüz gibi, Çalışma Kitaplarım var,
Kod:
Workbooks.Open Filename:="D:\personel\htiken\YT.xlsm"
Workbooks.Open Filename:="D:\personel\htiken\BT.xlsm"
bu Çalışma Kitaplarını, ComboBox'ta sıralayıp açabilir miyiz?, hangi Çalışma Kitabına tıklanırsa o Çalışma Kitabı açılsın. Yardımlarınız için şimdiden teşekkür ediyorum.
 
Selamün Aleyküm,
Arkadaşlar, aşağıda gördüğünüz gibi, Çalışma Kitaplarım var,
Kod:
Workbooks.Open Filename:="D:\personel\htiken\YT.xlsm"
Workbooks.Open Filename:="D:\personel\htiken\BT.xlsm"
bu Çalışma Kitaplarını, ComboBox'ta sıralayıp açabilir miyiz?, hangi Çalışma Kitabına tıklanırsa o Çalışma Kitabı açılsın. Yardımlarınız için şimdiden teşekkür ediyorum.

merhaba
Kod:
Private Sub ComboBox1_Change()
Workbooks.Open ("D:\personel\htiken\" & ComboBox1.Value)
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A1")) Is Nothing Then Exit Sub
ComboBox1.Clear
Set nesne = CreateObject("Scripting.FileSystemObject")
For Each dosya In nesne.GetFolder("D:\personel\htiken\").Files
If dosya.Name <> ThisWorkbook.Name Then ComboBox1.AddItem dosya.Name
Next
If ComboBox1.ListCount > 0 Then ComboBox1.ListIndex = 0
End Sub
bu kodlar işinizi görür sanırım
A1 hücresine tıkladığınız'da combobox'ta kitaplar görünmeye başlar
 
İhsan bey çook teşekkür ediyorum, sağolun, Allah razı olsun, bunu, UserForm'a nasıl uygulayabiliriz?, tekrar teşekkür ediyorum, kolay gelsin.
 
İhsan bey çook teşekkür ediyorum, Allah razı olsun, bunu UserForm'a nasıl uygulayabiliriz?, tekrar teşekkür ediyorum, kolay gelsin.

o zaman userform'un içine bir tane combobox oluşturup kod bölümüne
Kod:
Private Sub ComboBox1_Change()
Workbooks.Open ("D:\personel\htiken\" & ComboBox1.Value)
End Sub
Private Sub UserForm_Initialize()
Set nesne = CreateObject("Scripting.FileSystemObject")
For Each dosya In nesne.GetFolder("D:\personel\htiken\").Files
If dosya.Name <> ThisWorkbook.Name Then ComboBox1.AddItem dosya.Name
Next
If ComboBox1.ListCount > 0 Then ComboBox1.ListIndex = 0
End Sub
bu kodları yazarak dener misiniz
 
Selam ihsan bey kodu çalıştırınca combobox dan seçim yapınca kitap açılıyor. bunu nasıl engellerim.Saygılarımla.
 
İhsan bey çook teşekkürler, işlem tamam, kod sadece Excel Kitaplarını açıyor.
Word Belgelerini açmak için ayrı bir kodlama nasıl yapılabilir? dosya yolu aynı. Yardımlarınız için şimdiden teşekkür ediyorum.
 
İhsan bey verdiğiniz link için teşekkür ediyorum, ayrı bir UserFormda Word Belgelerini açmak için yukarıdaki kodta nasıl bir değişiklik yapmak lazım.
 
İhsan bey verdiğiniz link için teşekkür ediyorum, ayrı bir UserFormda Word Belgelerini açmak için yukarıdaki kodta nasıl bir değişiklik yapmak lazım.

merhaba
seyit bey verdiğim link'teki dosya sizin istediklerinizin fazlasını yapıyor.
lütfen detaylı inceleyiniz
 
Alternatif kod
combobox1 e çift tıklayınca dosya açılıyor.

Kod:
Private Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long
Private Sub ComboBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
AD = ComboBox1.List(ComboBox1.ListIndex, 0)
On Error Resume Next
WinExec "Explorer.exe " & AD, 1
End Sub
Private Sub CommandButton1_Click()
ComboBox1.Clear
ComboBox1.ColumnCount = 2
ComboBox1.ColumnWidths = "0;200;0"
Dim Yol As String
Dim Dosya As String, sat As Long
Yol = "D:\personel\htiken"
'Yol = "C:\Users\erdem\Desktop\Yeni klasör"
sat = 0
Dosya = Dir(Yol & "\*.doc")
While Dosya <> ""
DoEvents
ComboBox1.AddItem
ComboBox1.List(sat, 0) = Yol & "\" & Dosya
ComboBox1.List(sat, 1) = Dosya
sat = sat + 1
Dosya = Dir
Wend
If ComboBox1.ListCount > 0 Then ComboBox1.ListIndex = 0
End Sub
Private Sub UserForm_Initialize()
CommandButton1_Click
End Sub
 
Arkadaşlar yardım ve çabalarınız çook teşekkür ediyorum, bu kod yalnız Excel Kitaplarını açıyor, işime bayağı yaradı, burda hedeflenen, Word Belgelerini en kısa yoldan açmaktır, aşağıdaki kodta nasıl bir değişiklik yaparsak Word Belgelerini açabiliriz?, bunu yapabilirsek, amaca ulaşmış oluruz.
Kod:
Private Sub ComboBox1_Click()
Workbooks.Open ("D:\Yeni Klasör\" & ComboBox1.Value)
End
End Sub
------------------------------------------------------
Private Sub UserForm_Initialize()
Set nesne = CreateObject("Scripting.FileSystemObject")
For Each dosya In nesne.GetFolder("D:\Yeni Klasör\").Files
If dosya.Name <> ThisWorkbook.Name Then ComboBox1.AddItem dosya.Name
Next
If ComboBox1.ListCount = 0 Then ComboBox1.ListIndex = 0
End Sub
 
Arkadaşlar yardım ve çabalarınız çook teşekkür ediyorum, bu kod yalnız Excel Kitaplarını açıyor, işime bayağı yaradı, burda hedeflenen, Word Belgelerini en kısa yoldan açmaktır, aşağıdaki kodta nasıl bir değişiklik yaparsak Word Belgelerini açabiliriz?, bunu yapabilirsek, amaca ulaşmış oluruz.
Kod:
Private Sub ComboBox1_Click()
Workbooks.Open ("D:\Yeni Klasör\" & ComboBox1.Value)
End
End Sub
------------------------------------------------------
Private Sub UserForm_Initialize()
Set nesne = CreateObject("Scripting.FileSystemObject")
For Each dosya In nesne.GetFolder("D:\Yeni Klasör\").Files
If dosya.Name <> ThisWorkbook.Name Then ComboBox1.AddItem dosya.Name
Next
If ComboBox1.ListCount = 0 Then ComboBox1.ListIndex = 0
End Sub

bunu denermisin

Kod:
Private Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long
Private Sub ComboBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
AD = "D:\Yeni Klasör\" & ComboBox1.List(ComboBox1.ListIndex, 0)
On Error Resume Next
WinExec "Explorer.exe " & AD, 1
End Sub
Private Sub UserForm_Initialize()
Set nesne = CreateObject("Scripting.FileSystemObject")
For Each Dosya In nesne.GetFolder("D:\Yeni Klasör\").Files
MsgBox Dosya
If Dosya.Name <> ThisWorkbook.Name Then ComboBox1.AddItem Dosya.Name
Next
If ComboBox1.ListCount = 0 Then ComboBox1.ListIndex = 0
End Sub
 
Dosyayı açmak için combobox a çift tıklıyacaksın
 
Halit bey çook teşekkür ediyorum, yukarıda sunduğum kod revize edilebilirse, çözüm olur diye düşünüyorum. Kodlamalarınızda, MsgBox'lar olmasın ve Word Belgeleri İnternet üzerinde değil de, ComboBox'ta listelesin ve tıklamayla belge açılabilsin. Bu şekilde olursa daha pratik olur diye düşünüyorum. Kolay gelsin, Allah razı olsun.
 
Bu kod yanlızca word dosyalarını açar

Kod:
Private Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long
Const klasor = "D:\Yeni Klasör\"
Private Sub ComboBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
CreateObject("Shell.Application").Open klasor & ComboBox1.List(ComboBox1.ListIndex, 0)
End Sub
Private Sub UserForm_Initialize()
Set nesne = CreateObject("Scripting.FileSystemObject")
For Each Dosya In nesne.GetFolder(klasor).Files
If Dosya.Name <> ThisWorkbook.Name Then ComboBox1.AddItem Dosya.Name
Next
If ComboBox1.ListCount = 0 Then ComboBox1.ListIndex = 0
End Sub
 
Halit bey çok teşekkür ediyorum, işlem tamam, tam istediğim gibi oldu, yazılım yalnız Word'ü açmıyor. Excel ve hatta Corel Draw'ı bile açıyor, harika bir şey oldu, tekrar teşekkür ediyorum, Allah razı olsun.
 
Halit bey çok teşekkür ediyorum, işlem tamam, tam istediğim gibi oldu, yazılım yalnız Word'ü açmıyor. Excel ve hatta Corel Draw'ı bile açıyor, harika bir şey oldu, tekrar teşekkür ediyorum, Allah razı olsun.

İyi çalışmalar
 
Geri
Üst