Zafer Hocam sayfayı hazırla diyince kontrol sayfası kosul1 Alınmayacak Bürolar kısmına yazılan büroları çekmemesi lazimken ilgili ay sayfasına çekiyor
Bir de misal ocak ayı sayfasına çekilen isimlerin F:AJ aralığına 1 ekleyip AJ satırında toplam alsa
A Sayfasında Olan Veri B Sayfasında Varsa A Sayfasındaki İlgili Satırı Silme
(19/11/2020, 12:59)hayalibey yazdı: Zafer Hocam sayfayı hazırla diyince kontrol sayfası kosul1 Alınmayacak Bürolar kısmına yazılan büroları çekmemesi lazimken ilgili ay sayfasına çekiyorSınuç olarak nasıl çıkacak.Bir sayfada örnek olarak gösterin abey akşama bakayım.
Bir de misal ocak ayı sayfasına çekilen isimlerin F:AJ aralığına 1 ekleyip AJ satırında toplam alsa
Tamam Hocam
recordset ile yapıldı o nedenle ms ActiveX Data Objects library eklendi
Dim Sql As String
Dim ADO_RS As ADODB.Recordset
Dim ADO_CN As ADODB.Connection
SQL = "SELECT [VERi$].[F1], [VERi$].[F2], [VERi$].[F5], [VERi$].[F3], [VERi$].[F4],1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 " & _
"FROM (([VERi$] LEFT JOIN [KONTROL$D2] ON [VERi$].[F6] = [KONTROL$D2].[F1]) " & _
"LEFT JOIN [KONTROL$E2:E] ON [VERi$].[F5] = [KONTROL$E2:E].[F1]) " & _
"LEFT JOIN [KONTROL$F2:F] ON [VERi$].[F2] = [KONTROL$F2:F].[F1] " & _
"where ([VERi$].[F1] Is Not Null) and (([KONTROL$D2].[F1]) Is Null) and (([KONTROL$E2:e].[F1]) Is Null) and (([KONTROL$F2:F].[F1]) Is Null) "
Set ADO_RS = New ADODB.Recordset
Set ADO_CN = New ADODB.Connection
'sonStr = ws.Range("A" & Rows.Count).End(3).Row + 1
ADO_CN.ConnectionString = "provider=Microsoft.ACE.OLEDB.12.0;data source=" & ThisWorkbook.FullName & _
";extended properties=""excel 12.0;hdr=no;IMEX=1"""
ADO_CN.Open
ADO_RS.Open SQL, ADO_CN, 3, 1
'
SonStr = Worksheets(Me.ComboBox1.Value).Cells(Worksheets(Me.ComboBox1.Value).Rows.Count, 2).End(xlUp).Row + 1
Worksheets(Me.ComboBox1.Value).Range("A7:AI" & SonStr).UnMerge
Worksheets(Me.ComboBox1.Value).Range("A7:AI" & SonStr).ClearContents
' Eğer Hiç Kayıt Yoksa
If ADO_RS.RecordCount = 0 Then
MsgBox "Kayıt Bulunamadı.", vbCritical, "Veri Yok"
GoTo skipfile:
End If
ADO_RS.MoveLast
ADO_RS.MoveFirst
ADO_RS.MoveNext
Worksheets(Me.ComboBox1.Value).Range("A7").CopyFromRecordset ADO_RS
skipfile:
ADO_RS.Close
ADO_CN.Close
Set ADO_RS = Nothing
Set ADO_CN = Nothing
sonuçlar doğru ise imza ve toplam kodları da sonradan eklenebilir
yanlışlıkla veri adları yeniden ekleniyor 'ADO_RS.MoveNext satırının başındaki tek tırnağı kaldırmanız yeterli
Inceliyorim hocam su an
Konuyu Okuyanlar: 11 Ziyaretçi