- Katılım
- 14 Ocak 2005
- Mesajlar
- 807
- Excel Vers. ve Dili
- Microsoft Office Professional Plus 2021
Selam arkadaşlar; Aşağıdaki sorgumda bir sorun oluyor bakabilirseniz sevinirim.
YUKARIDAKİ kodlarımla veritabanımdan çağırmış olduğum bililerimi excelde Cells(I + 7, 1).Value burdaki sabit değerimle eşitse karşısına
bunları yazsın yani bu satırları işletsin
sonra diğer satıra baksın buşekilde bir şartlı döngü kurmak istedim ama yapamıyorum nasıl yapabilirim. bu if li döngüyü.
Kod:
Dim BASTAR As String
Dim BITTAR As String
Dim BSYIL As String
Dim BSAY As String
Dim BSGUN As String
Dim BTYIL As String
Dim BTAY As String
Dim BTGUN As String
Dim DEPARTMAN As String
Dim SQLText As String
Dim I As Integer
Dim RST As New ADODB.Recordset
Call Main
DoEvents
SQLCON.Open
BSYIL = Range("B3")
BSAY = Range("C3")
BSGUN = Range("D3")
BTYIL = Range("B4")
BTAY = Range("C4")
BTGUN = Range("D4")
BASTAR = BSYIL + " - " + BSAY + " - " + BSGUN
BITTAR = BTYIL + " - " + BTAY + " - " + BTGUN
DEPARTMAN = Range("C1")
SQLText = "SELECT ENV_MLZ,STKMLZ_ADI1,ENV_DEV_MIK,ENV_GIR_MIK,ENV_URT_MIK,ENV_ART_MIK,ENV_RZG_MIK, " & vbCrLf
SQLText = SQLText & " ENV_CIK_MIK,ENV_IML_MIK,ENV_EKS_MIK,ENV_HAS_MIK,ENV_IAD_MIK,ENV_SAT_MIK " & vbCrLf
SQLText = SQLText & " FROM ENV " & vbCrLf
SQLText = SQLText & " LEFT OUTER JOIN tttMLZ ON tttMLZ_KOD = ENV_MLZ " & vbCrLf
SQLText = SQLText & " WHERE ENV_CPFACD = '" + DEPARTMAN + "' AND " & vbCrLf
SQLText = SQLText & " ENV_TAR = '" + BITTAR + "' " & vbCrLf
Set RST.DataSource = SQLCON.Execute(SQLText)
'Range("A8:O65000").Select
'Selection.ClearContents
Do Until RST.EOF
For I = 1 To RST.RecordCount Step 1
deger = RST.Fields(0).Value
If Cells(I + 7, 1).Value = deger Then
'Cells(I + 7, 1) = RST.Fields(0) ' _MLZ
'Cells(I + 7, 2) = RST.Fields(1) ' _TTTMLZ_ADI1 LEFT OUTER JOIN
Cells(I + 7, 3) = RST.Fields(2) ' _DEV_MIK
Cells(I + 7, 4) = RST.Fields(3) + RST.Fields(4) + RST.Fields(5) + RST.Fields(6) ' _GIR_MIK + _URT_MIK + _ART_MIK + _RZG_MIK
Cells(I + 7, 5) = RST.Fields(7) + RST.Fields(8) + RST.Fields(9) + RST.Fields(10) + RST.Fields(11) + RST.Fields(12) ' _CIK_MIK + _IML_MIK + _EKS_MIK + _HAS_MIK + _IAD_MIK + _SAT_MIK
Cells(I + 7, 6) = (RST.Fields(2) + RST.Fields(3) + RST.Fields(4) + RST.Fields(5) + RST.Fields(6)) - (RST.Fields(7) + RST.Fields(8) + RST.Fields(9) + RST.Fields(10) + RST.Fields(11) + RST.Fields(12))
Label1.Caption = "% " & Round(I / RST.RecordCount * 100, 0)
RST.MoveNext
End If
Next I
Loop
RST.Close
SQLCON.Close
Range("B7").Select
YUKARIDAKİ kodlarımla veritabanımdan çağırmış olduğum bililerimi excelde Cells(I + 7, 1).Value burdaki sabit değerimle eşitse karşısına
Kod:
Cells(I + 7, 3) = RST.Fields(2) ' _DEV_MIK
Cells(I + 7, 4) = RST.Fields(3) + RST.Fields(4) + RST.Fields(5) + RST.Fields(6) ' _GIR_MIK + _URT_MIK + _ART_MIK + _RZG_MIK
Cells(I + 7, 5) = RST.Fields(7) + RST.Fields(8) + RST.Fields(9) + RST.Fields(10) + RST.Fields(11) + RST.Fields(12) ' _CIK_MIK + _IML_MIK + _EKS_MIK + _HAS_MIK + _IAD_MIK + _SAT_MIK
Cells(I + 7, 6) = (RST.Fields(2) + RST.Fields(3) + RST.Fields(4) + RST.Fields(5) + RST.Fields(6)) - (RST.Fields(7) + RST.Fields(8) + RST.Fields(9) + RST.Fields(10) + RST.Fields(11) + RST.Fields(12))
bunları yazsın yani bu satırları işletsin
sonra diğer satıra baksın buşekilde bir şartlı döngü kurmak istedim ama yapamıyorum nasıl yapabilirim. bu if li döngüyü.
