Aralik.address kırpma

Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
girdiğimiz Aralığın ilk kısmını ve son kısmını kırpma nasıl olmalıdır.

Mesala "KODLAR!$B$18:$B$31" dizisinden;
B18 i nasıl alabilirim.
B31 i nasıl alabilirim.
Kod:
Sub AralıkBilesen21()
Sub AralıkBilesen21()
'Set Aralik = ThisWorkbook.Sheets("FncHsr_X(Kılavuzu)").Range("c2:c20")
Set Aralik = Range("b18:b31") 'Range(Cells(3, 2), Cells(31, 2))
Dim wb As Workbook
Dim ws As Worksheet
Set ws = Aralik.Parent
Set wb = ws.Parent
AralıkBilesenaaaa = "Kitap: " & wb.Name & " Sayfa:" & ws.Name & "   Erim: " & Aralik.address
MsgBox AralıkBilesenaaaa
Set ws = Nothing
Set wb = Nothing
End Sub
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Aşağıdaki makro size bir fikir verebilir. Aralığı, siz istediğiniz gibi değiştirin.

Kod:
Sub Araliktaki_Ilk_ve_Son_Hucreleri_Bul()
    
    Dim rg As Range
    
    Set rg = Range("A18:C152")
    With rg
        MsgBox "İlk Hücre : " & Cells(.Row, .Column).Address & vbLf & _
               "Son Hücre : " & Cells(.Row + .Rows.Count - 1, .Column + .Columns.Count - 1).Address
    End With
    Set rg = Nothing
End Sub
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
ferhat hocam alakanıza teşekkür ederim şimdi ki sorum şu
Kod:
Function AraliktaİlkveSonHucre(Aralik As Range)
    With Aralik
   '     AraliktaİlkveSonHucre = "İlk Hücre : " & Cells(.Row, .Column).address & vbLf & _
               "Son Hücre : " & Cells(.Row + .Rows.Count - 1, .Column + .Columns.Count - 1).address
    AraHucIlk = Cells(.Row, .Column).address
    AraHucSon = Cells(.Row + .Rows.Count - 1, .Column + .Columns.Count - 1).address
    End With
    AraliktaİlkveSonHucre = AraHucIlk
    Set Aralik = Nothing
 
End Function
AraHucIlk hücresinin değerini nasıl tespit ederiz?
Yani AraHucIlk.value
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Kodlarınızda; "AraHucIlk=..... "yazan eşitliğin sağındaki ".address" yazan kısmı silin (veya yerine ".Value" yazın)
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
teşekkürler hocam
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
hocam şöyle bir sorun var, fonksiyonumuzu tanımladık ve yeni bir çalışma kitabının
sayfa2 sinin a sütuna AAAAA yazdık
sayfa1 inin a sütuna BBBBB yazdık
sayfa1, b1 hücresine =AraliktaİlkveSonHucre(Sayfa2!A1:A1)

yazdık ancak bize sonuç olarak "bbbb" döndürdü nasıl düzeltebiliriz?
Kod:
Function AraliktaİlkveSonHucre(Aralik As Range)
    With Aralik
   '     AraliktaİlkveSonHucre = "İlk Hücre : " & Cells(.Row, .Column).address & vbLf & _
               "Son Hücre : " & Cells(.Row + .Rows.Count - 1, .Column + .Columns.Count - 1).address
    AraHucIlk = Cells(.Row, .Column).Value
    AraHucSon = Cells(.Row + .Rows.Count - 1, .Column + .Columns.Count - 1).address
    End With
    AraliktaİlkveSonHucre = AraHucIlk
    Set Aralik = Nothing
End Function
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
O şekilde döndürmesi gayet normal, çünkü biz kodlarda, sayfa referansını kullanmadık.

Aşağıdaki kodu deneyin.

Kod:
Function AraliktaİlkveSonHucre(Aralik As Range)
    With Aralik
        AraliktaİlkveSonHucre = .Worksheet.Cells(.Row, .Column).Value
    End With
End Function
 
Katılım
2 Mart 2005
Mesajlar
2,960
Excel Vers. ve Dili
ev: Ofis 2007- Win Xp
iş: Ofis 2010- Win Vista
Elinize sağlık
hocam ya başka kitaptan alırsak o zaman ne yapacağız ?
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Başka kitaptan bir araliği; fonksiyona referans göstererek denediniz mi hiç?
 
Üst