1Al2Ver
Altın Üye
		- Katılım
- 5 Kasım 2007
- Mesajlar
- 4,725
- Excel Vers. ve Dili
- 64 Bit TR - Microsoft Office 365 - Win11 Home
- Altın Üyelik Bitiş Tarihi
- 04-01-2026
Merhaba,
Aşağıdaki Kod'a ;
"RAPOR" sayfası K1 hücresi; >=43 ise ekranda, "Tabela satır sayısı yetmiyor, bu nedenle Tabela Oluşturulmadı" mesajını verdirmek ve makronun, K1 hücresi 43'ün altına değil ise yapmamasını istiyorum.
NOT ; K1 hücresine veri, =TOPLA(K3:K14) ile alınmaktadır.
Teşekkür ederim.
	
	
	
		
								Aşağıdaki Kod'a ;
"RAPOR" sayfası K1 hücresi; >=43 ise ekranda, "Tabela satır sayısı yetmiyor, bu nedenle Tabela Oluşturulmadı" mesajını verdirmek ve makronun, K1 hücresi 43'ün altına değil ise yapmamasını istiyorum.
NOT ; K1 hücresine veri, =TOPLA(K3:K14) ile alınmaktadır.
Teşekkür ederim.
		Kod:
	
	Sub TABELA_OLUŞTUR()
Set ra = Sheets("RAPOR"): Set RE = Sheets("REÇETE")
If ra.[C60].End(3).Row > 16 Then ra.Range("A17:I" & ra.[C59].End(3).Row).ClearContents
Cells.NumberFormat = General 
    Select Case ra.[N1]
        Case Is = "Düşük": hedef = 5
        Case Is = "Orta": hedef = 6
        Case Is = "Yüksek": hedef = 7
    End Select
For yemek = 3 To ra.[H16].End(3).Row
Cells(ra.[C60].End(3).Row + 1, 2) = ra.Cells(yemek, 8)
    ilk = WorksheetFunction.Match(ra.Cells(yemek, 8), RE.Range("B:B"), 0)
    son = WorksheetFunction.CountIf(RE.Range("B:B"), ra.Cells(yemek, 8)) + ilk - 1
    For resat = ilk To son
        rasat = ra.[C60].End(3).Row + 1: ra.Cells(rasat, 3) = RE.Cells(resat, 3)
        ra.Cells(rasat, 4) = RE.Cells(resat, 4): ra.Cells(rasat, 5) = RE.Cells(resat, hedef)
  
  ra.Cells(rasat, 5).NumberFormat = RE.Cells(resat, hedef).NumberFormat ' BU satır adet ve kesirli olan sayılar için eklendi  19.07.2016 ÖB.
  
        If Cells(rasat, 4) = "Gr" Then
            ra.Cells(rasat, 6) = ra.[D14] * ra.Cells(rasat, 5) / 1000
            ra.Cells(rasat, 8) = (RE.Cells(resat, 8) * RE.Cells(resat, hedef) / 1000) * ra.[D14]
        Else
            ra.Cells(rasat, 6) = ra.[D14] * ra.Cells(rasat, 5)
            ra.Cells(rasat, 8) = (RE.Cells(resat, 8) * RE.Cells(resat, hedef) / 100) * ra.[D14] * 100
        End If
        ra.Cells(rasat, 7) = RE.Cells(resat, 8): ra.Cells(rasat, 9) = RE.Cells(resat, hedef + 5) 'hedef+5 yerine 10 yazarsak düşük kaloriyi alır, bu haliyle seçime göre kaloride değişir.14.07.2016
    Next
Next
With ra.Range("A17:A" & ra.[C60].End(3).Row)
    .Formula = "=IF(ISERROR(MATCH(B17,$H$1:$H$14,0)),"""",MAX($A$16:A16)+1)": .Value = .Value
End With
        
ra.[H1].NumberFormat = "dd/mm/yyyy" 
ra.[H60].NumberFormat = "#,##0.00"
ra.[H61:H62].NumberFormat = "#,##0.00"
ra.[H64:H67].NumberFormat = "#,##0.00"
ra.[F19:I59].NumberFormat = "#,##0.000"
ra.[G17:H17].NumberFormat = "#,##0.000"
ra.[E3:F4].NumberFormat = "#,##0.00"
ra.[I19:I59].NumberFormat = "#.00"
MsgBox "İşlem Tamam !!!"
End Sub 
				





