Başvuru adresi

Katılım
7 Mart 2005
Mesajlar
85
Merhaba Arkadaşlar,
Elimde aşağıdki gibi bir kod var. Bu kod belirtilen hücrelerdeki değeri alt alta sıralıyor. Bu kodu; belirtilen hücrelerin adresi ile listeleyecek şekilde nasıl düzenleyebilirim. Bu konuda tecrübesizim.

yani a1 hücresinde c:\documen.....\belgelerim\[Kitap1]Sayfa3!$B$2 şeklinde getirmesini istiyorum. çünki b2 değişken.



Sub Hucre_List()
Dim Sh As Worksheet
Dim i As Integer

For Each Sh In Worksheets
If Not Sh.Name = ActiveSheet.Name Then
i = i + 1
Cells(i, 1) = Sh.Range("B2")
Cells(i, 2) = Sh.Range("F18")
Cells(i, 3) = Sh.Range("F38")
Cells(i, 4) = Sh.Range("E40")
Cells(i, 5) = Sh.Range("E43")
End If
Next
End Sub
 
Katılım
3 Mart 2005
Mesajlar
571
Excel Vers. ve Dili
Excel 2000 Ing.
[vb:1:6b61f28105]MsgBox Application.ActiveWorkbook.Path & "\[" & ActiveWorkbook.Name & "]" & ActiveSheet.Name & "!" & Sheets(1).Range("B2").Address[/vb:1:6b61f28105]
 
Katılım
3 Mart 2005
Mesajlar
571
Excel Vers. ve Dili
Excel 2000 Ing.
benim mesayim bitti, özür dilerim.
yarın ilk fırsatta bakarım.
 
Katılım
3 Mart 2005
Mesajlar
571
Excel Vers. ve Dili
Excel 2000 Ing.
merhaba,

ne yapmak istediğinizi hala anlayamadım.

sizin yazdığınız komutlar aktif sayfanın haricindeki sayfa sayısı kadar
i' yi artırıyor ve ilgili satırlara değerler yazıyor.

istediğiniz komutu şöyle yazdım ama!! billmem işinizi görür mü?

[vb:1:7972cb34e3]Private Sub CommandButton1_Click()
Dim Sh As Worksheet
Dim i As Integer
For Each Sh In Worksheets
If Not Sh.Name = ActiveSheet.Name Then
i = i + 1
Cells(i, 1) = Application.ActiveWorkbook.Path & "\[" & ActiveWorkbook.Name & "]" & ActiveSheet.Name & "!" & Sheets(1).Range("B2").Address
End If
Next
End Sub[/vb:1:7972cb34e3]
 
Katılım
7 Mart 2005
Mesajlar
85
evet ilgili sayfaya değerler yazıyor. ben bu değerlerin adresini yazsın istiyorum. -ki bu durumdada değerler aynı olacak fakat diğer taraf değiştiğinde bu değerlerde değişecek-
 
Katılım
3 Mart 2005
Mesajlar
571
Excel Vers. ve Dili
Excel 2000 Ing.
merhaba,

=c:\documen.....\belgelerim\[Kitap1]Sayfa3!$B$2
böyle bir formülün kullanılabirliği hakkında hiç bir bilgim yok.

ama
=[Kitap1]Sayfa3!$B$2
bu başvuru Kitap1 dosyası açık olduğu müddetçe çalışacaktır.

ama yine de sizin istediğiniz gibi bir fonksiyon kullanılabilirse ben bilmiyorum.
eğer makro ile yaptırmak isteseniz forumda bu konu ile ilgili,
kapalı dosyaya nasıl veri yazılabilir gibi bir başlık vardı,
veya buna benzer,

aslında siz soruyu tam soramadınız,

ben bu değerlerin adresini yazsın istiyorum
visual basic kodu:
--------------------------------------------------------------------------------
Private Sub CommandButton1_Click()
Dim Sh As Worksheet
Dim i As Integer
For Each Sh In Worksheets
If Not Sh.Name = ActiveSheet.Name Then
i = i + 1
Cells(i, 1) = Application.ActiveWorkbook.Path & "\[" & ActiveWorkbook.Name & "]" & ActiveSheet.Name & "!" & Sheets(1).Range("B2").Address
End If
Next
End Sub
--------------------------------------------------------------------------------
bu zaten adres oluşturuyor.

iyi çalışmalar.
 
Katılım
7 Mart 2005
Mesajlar
85
merhaba arkadaşlar aşağıdaki kod, aynı çalışma kitabındaki sheetlerin belli hücrelerine yapılan başvurunun adresini almak için. daha kısa bir ifade ile bağ yapıştır...

kod yazan isakarakus kardeşime teşekkür ederim.


Sub Listele()
Dim Sh As Worksheet
Dim i As Integer

For Each Sh In Worksheets
If Not Sh.Name = ActiveSheet.Name Then
i = i + 1
Cells(i, 1).Formula = "='" & Sh.Name & "'!" & Sh.Range("B2").Address
Cells(i, 2) = "='" & Sh.Name & "'!" & Sh.Range("F18").Address
Cells(i, 3) = "='" & Sh.Name & "'!" & Sh.Range("F37").Address
Cells(i, 4) = "='" & Sh.Name & "'!" & Sh.Range("E39").Address
Cells(i, 5) = "='" & Sh.Name & "'!" & Sh.Range("E42").Address

End If
Next
End Sub
 
Katılım
3 Mart 2005
Mesajlar
571
Excel Vers. ve Dili
Excel 2000 Ing.
merhaba,

Cells(i, 1).Formula = ifadesinde formula olsa da olur olmasa da

[vb:1:b71eae2690]Cells(i, 1) = "='" & Sh.Name & "'!" & Sh.Range("B2").Address
Cells(i, 2) = "='" & Sh.Name & "'!" & Sh.Range("F18").Address
Cells(i, 3) = "='" & Sh.Name & "'!" & Sh.Range("F37").Address
Cells(i, 4) = "='" & Sh.Name & "'!" & Sh.Range("E39").Address
Cells(i, 5) = "='" & Sh.Name & "'!" & Sh.Range("E42").Address [/vb:1:b71eae2690]

veya

[vb:1:b71eae2690]Cells(i, 1).Formula = "='" & Sh.Name & "'!" & Sh.Range("B2").Address
Cells(i, 2).Formula = "='" & Sh.Name & "'!" & Sh.Range("F18").Address
Cells(i, 3).Formula = "='" & Sh.Name & "'!" & Sh.Range("F37").Address
Cells(i, 4).Formula = "='" & Sh.Name & "'!" & Sh.Range("E39").Address
Cells(i, 5).Formula = "='" & Sh.Name & "'!" & Sh.Range("E42").Address [/vb:1:b71eae2690]

aslında soruyu anlayamadığımız için konu bu kadar uzadı.


iyi çalışmalar.
:arkadas:
 
Katılım
7 Mart 2005
Mesajlar
85
tekrar merhaba,

kod güzel çalışıyor ama bazı çalışma kitaplarında hata veriyor. mesela, 40 sheetlik bir çalışma kitabında 35 sheetteki bilgileri getiriyor 36.da kodun 1.satırında hata var diyor duruyor.
 
Üst