• DİKKAT

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

Else Without If hatası

Katılım
30 Kasım 2006
Mesajlar
625
Excel Vers. ve Dili
OFFICE 2003 Türkçe
Merhaba;
Ekteki dosyam üzerinde belirttiğim kod da "Else Without If" hatası vermekte.Bir hata veya eksik var ama anlayamadım. Yardımcı olursanız çok sevinirim. Saygılarımla
 

Ekli dosyalar

If döngüsünü aşağıdaki kalıba uygun şekilde kullanın.
Kod:
If ... then

Elseif ... then


Elseif ... then


Else
...

End if
 
Hocam İlginize teşekkür ediyorum,
Bir türlü nerelerde kullanacağımı yerleştiremedim. Bakabilirseniz çok memnun olurum.
 
Baktım ama kodunuz biraz karışık geldi. Tam olarak ne yapmak istediğinizi anlamadım.
 
Hocam;
ToggleButtona ilk tıkladığımızda boş zemin üzerine "İşin adı "vs. hücrelerini biçimlendiriyor.İkinci tıkladığımızda ise o hücrelerdeki verileri "ÖDENEK" sayfasına atması gerekiyor. Şu anda örnek olarak gönderdiğimden diğer düğmeleri sildim görünmüyor ama aynı alanı 4 ayrı ToggleButton altındaki farklı başlıklar için kullanıyorum. Hangi konuyla ilgili ToggleButton' u tıklarsam o konuyla ilgili hücreleri tekrar biçimlendiriyor.Kod çalıştığında aktarmayı yaptığı zaman o alan tekrar boş bir zemin haline geliyor.
 
Son düzenleme:
Hocam aslında bu kod çalışıyordu,Ödenek sayfasına atmak için yazılan kodları aylara ait sütunlara atması için değiştirdikten sonra hata vermeye başladı.
 
Kodu biraz düzenledim. Veri doğrulama ve hücre birleştirmeleri kod ile neden yapmak istediğinizi anlamadım. Bence kodu baştan yazmak daha iyi. Ne yapmak istediğinizi kısa kısa sorun ve kodu bu şekilde geliştirin. Yoksa bu kodun içinden çıkmak zor.
Kod:
Private Sub ToggleButton2_Click()
Dim SAYFA As Worksheet
Dim SUT As Integer

Application.ScreenUpdating = False
Excel.Application.Calculation = xlCalculationManual

If ToggleButton2.Value = True Then
 
    Range("AB34:AG34").Merge
    Range("AH34:AQ34").Merge
    Range("AB36:AG36").Merge
    Range("AH36:AQ36").Merge
    Range("AB38:AG38").Merge
    Range("AH38:AQ38").Merge
    Range("AB40:AG40").Merge
    Range("AH40:AQ40").Merge
    Range("AS34:AX34").Merge
    Range("AY34:BD34").Merge
    Range("AS36:AX36").Merge
    Range("AY36:BD36").Merge
    Range("AS38:AV38").Merge
    Range("AW38:AX38").Merge
    Range("AY38:BD38").Merge
    Range("AS40:AX40").Merge
    Range("AY40:BP40").Merge
    Range("BF34:BJ34").Merge
    Range("BK34:BP34").Merge
    Range("BF36:BJ36").Merge
    Range("BK36:BP36").Merge
    Range("BF38:BJ38").Merge
    Range("BK38:BP38").Merge
[AN32] = 2
[AB34] = "İşin Adı"
[AB36] = "Sektörü"
[AS34] = "Öden. Trh"
[AS36] = "Beld.Kodu"
[BF34] = "Tutar"
    
    Range("AH34").Select
'    With Selection.Validation
'        .Delete
'        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
'        xlBetween, Formula1:="=Yapılan_İşin_adı"
'        .IgnoreBlank = True
'        .InCellDropdown = True
'        .InputTitle = ""
'        .ErrorTitle = ""
'        .InputMessage = ""
'        .ErrorMessage = ""
'        .ShowInput = True
'        .ShowError = True
'    End With
'    Range("AH36").Select
'    With Selection.Validation
'        .Delete
'        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
'        xlBetween, Formula1:="=Sektör"
'        .IgnoreBlank = True
'        .InCellDropdown = True
'        .InputTitle = ""
'        .ErrorTitle = ""
'        .InputMessage = ""
'        .ErrorMessage = ""
'        .ShowInput = True
'        .ShowError = True
'    End With
'
'    End If
    Range("AH34").Select
Application.ScreenUpdating = True
Excel.Application.Calculation = xlCalculationAutomatic
 

Else

Set SAYFA = Sheets("Ödenek")
cevap = MsgBox("Y E N İ   Ö D E N E K  T U T A R I   A K T A R I L S I N M I  ?", vbYesNo)

For SUT = 4 To SAYFA.Cells(65536, "B").End(3).Row

Application.ScreenUpdating = False
If cevap = vbNo Then
Exit Sub
Else

If [cs3] = 1 And [D3] = SAYFA.Cells(SUT, "B") Then
SAYFA.Cells(SUT, "B").Offset(0, 5) = [BK34]
End If
If [cs3] = 2 And [D3] = SAYFA.Cells(SUT, "B") Then
SAYFA.Cells(SUT, "B").Offset(0, 6) = [BK34]
End If
If [cs3] = 3 And [D3] = SAYFA.Cells(SUT, "B") Then
SAYFA.Cells(SUT, "B").Offset(0, 7) = [BK34]
End If
If [cs3] = 4 And [D3] = SAYFA.Cells(SUT, "B") Then
SAYFA.Cells(SUT, "B").Offset(0, 8) = [BK34]
End If
If [cs3] = 5 And [D3] = SAYFA.Cells(SUT, "B") Then
SAYFA.Cells(SUT, "B").Offset(0, 9) = [BK34]
End If
If [cs3] = 6 And [D3] = SAYFA.Cells(SUT, "B") Then
SAYFA.Cells(SUT, "B").Offset(0, 10) = [BK34]
End If
If [cs3] = 7 And [D3] = SAYFA.Cells(SUT, "B") Then
SAYFA.Cells(SUT, "B").Offset(0, 11) = [BK34]
End If
If [cs3] = 8 And [D3] = SAYFA.Cells(SUT, "B") Then
SAYFA.Cells(SUT, "B").Offset(0, 12) = [BK34]
End If
If [cs3] = 9 And [D3] = SAYFA.Cells(SUT, "B") Then
SAYFA.Cells(SUT, "B").Offset(0, 13) = [BK34]
End If
If [cs3] = 10 And [D3] = SAYFA.Cells(SUT, "B") Then
SAYFA.Cells(SUT, "B").Offset(0, 14) = [BK34]
End If
If [cs3] = 11 And [D3] = SAYFA.Cells(SUT, "B") Then
SAYFA.Cells(SUT, "B").Offset(0, 15) = [BK34]
End If
If [cs3] = 12 And [D3] = SAYFA.Cells(SUT, "B") Then
SAYFA.Cells(SUT, "B").Offset(0, 16) = [BK34]
End If
End If
 Next
Range("AH34").Select
   Range("AB34:BP40").Select
'    With Selection.Validation
'        .Delete
'        .Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator _
'        :=xlBetween
'        .IgnoreBlank = True
'        .InCellDropdown = True
'        .ShowInput = True
'        .ShowError = True
'    End With
 Application.CommandBars("Forms").Visible = False
 [AN32] = ""
 Range("AB34:BP40").ClearContents
 Range("AB34:BP40").UnMerge
 Range("O16").Select
 Application.ScreenUpdating = True
Excel.Application.Calculation = xlCalculationAutomatic

End If


End Sub
 
Hocam Ellerinize sağlık tamamdır.Sizi uğraştırdım hakkınızı helal edin.Çok teşekkür ediyorum.İşleriniz kolay gelsin.
Veri doğrulamaları toggl buton başlığı ne ise onunla ilgili veri doğrma listesi açması için kullandım.
 
Helal olsun. Ama fazla yardımcı olamadım. Kusura bakmayın.
 
Geri
Üst