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

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
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.
 
İ

İhsan Tank

Misafir
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
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
İ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 Tank

Misafir
İ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
 
Katılım
24 Kasım 2006
Mesajlar
42
Excel Vers. ve Dili
excel 2007
Altın Üyelik Bitiş Tarihi
02-07-2021
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.
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
İ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.
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
İ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 Tank

Misafir
İ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
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,850
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
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
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
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
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,850
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
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
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,850
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
Dosyayı açmak için combobox a çift tıklıyacaksın
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
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.
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,850
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
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
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
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.
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,850
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
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
 
Üst