• DİKKAT

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

Diğer sayfadan range tanımlanması

Katılım
3 Mart 2007
Mesajlar
6
Excel Vers. ve Dili
excel xp
Sevgili Arkadaşlar,

Bir türlü göremiyorum nedir hatam.

Worksheets("DISBURSEMENT").Range(Cells(r, 21), Cells(r, 21).Offset(0, c1)).ClearContents
Worksheets("DISBURSEMENT").Range(Cells(r, 21), Cells(r, 21).Offset(0, c1)).HorizontalAlignment = xlRight

Yukarıdaki satırda hep "application defined or object defined" hatası alıyorum. Yardımlarınız için teşekkürler.

Makronun başlangıç kısmı aşağıdadır.

Sub Forecast()

Dim r As Integer
Dim r0 As Integer
Dim r1 As Integer

For r0 = 4 To 1000

If Worksheets("DISBURSEMENT").Cells(r0, 1) <> "" Then
r1 = r0
Else
GoTo CIK1
End If

Next r0

CIK1:
For c0 = 21 To 1000 Step 2
If Worksheets("DISBURSEMENT").Cells(1, c0) <> "" Then
c1 = c0
Else
GoTo CIK2
End If
Next c0

CIK2:
For r = 4 To r1

If Worksheets("DISBURSEMENT").Cells(r, 3) = "" Then

Worksheets("DISBURSEMENT").Range(Cells(r, 21), Cells(r, 21).Offset(0, c1)).ClearContents
Worksheets("DISBURSEMENT").Range(Cells(r, 21), Cells(r, 21).Offset(0, c1)).HorizontalAlignment = xlRight

End If

Next r

End Sub
 
If Worksheets("DISBURSEMENT").Cells(1, c0) <> "" Then

Worksheets("DISBURSEMENT").Range(Cells(r, 21), Cells(r, 21).Offset(0, c1)).HorizontalAlignment = xlRight

Burada C0 ,C1 ifadeleri kan&#305;mca hatal&#305; ?
Kullan&#305;m &#351;ekilleri &#351;u &#351;ekilde olabilir.
If Worksheets("DISBURSEMENT").Cells(1,3) <> "" Then
1=sat&#305;r no 3=sutun no yani C
VE
Worksheets("DISBURSEMENT").Range(range("r21"), Range("r21").Offset(0,3) ).HorizontalAlignment = xlRight
'R21 den 3 eleman sa&#287;a.

Ayr&#305;ca Cells(r,21) ifadesi yerine Range("r21") olabilir.
isteginiz bunlar m&#305;?
Bir ba&#351;ka kullan&#305;m&#305; Range("C" & i)
'Ci demek

Bu kodlar&#305; denemedim hatal&#305; olabilir.
 
Son düzenleme:
Öncelikle ilginize çok teşekkür ederim.

Aynı tablo içinde birden fazla makro çalışacağı ve her seferinde de satır ve sütun sayıları değişeceği için r1 ve c1 değişkenlerini kullandım.

Yani,

Worksheets("DISBURSEMENT").Range(Cells(1,21),Cells(1,76)) iken bir sonrakinde 76 ncı sütun 74'e düşeceği için son kısımdaki değişkenin tanımlanması beni zorladı.

Aslında Range("U" & r & ":AAAA" & c1) şeklinde birşey yazabilseydim tahminimce sorun hal olmuş olacaktı. AAAA yerine bir değişken oturtamamaktan bu sıkıntıyı yaşıyorum.

Tekrar teşekkürler.
 
Bence dosyan&#305;z&#305; ekleyin.
 
Geri
Üst