- Katılım
- 11 Mart 2005
- Mesajlar
- 3,058
- Excel Vers. ve Dili
- Office 2013 İngilizce
Merhabalar,
Ekli dosyada Hedef sayfasında;
Kaynak Sayfasından "DüşeyAra" formülü ile aldığım verileri, aşağıdaki kodda ADO "Left Join" operaatörü ile almak istediğimde hiç beklemediğim bir şekilde veri geliyor.
DüşeyAra ile aldığım veriler doğru gelirken; Left Join operaatörü ile saçma sapan veriler geliyor.
nerede hata yapıyorum, bir türlü içinden çıkmadım.
şimdiden teşekkürler,
iyi çalışmalar.
Ekli dosyada Hedef sayfasında;
Kaynak Sayfasından "DüşeyAra" formülü ile aldığım verileri, aşağıdaki kodda ADO "Left Join" operaatörü ile almak istediğimde hiç beklemediğim bir şekilde veri geliyor.
DüşeyAra ile aldığım veriler doğru gelirken; Left Join operaatörü ile saçma sapan veriler geliyor.
nerede hata yapıyorum, bir türlü içinden çıkmadım.
şimdiden teşekkürler,
iyi çalışmalar.
Kod:
Sub LeftJoinAction()
Dim Con As Object, RS As Object
Dim WS As Worksheet, Sht As Worksheet
Dim Rng As Range, tmpArray As Variant
Dim myFile As String, qry As String
Dim LR As Long, LC As Byte, i As Byte
Dim arrMs As Variant
'''On Error GoTo errMsg
Set WS = Sheets("Hedef")
WS.Range("D:E").ClearContents
myFile = ThisWorkbook.FullName
Set Con = VBA.CreateObject("adodb.Connection")
strConnection = _
"Provider=Microsoft.ACE.OLEDB.12.0;" & _
"User ID=Admin;" & _
"Data Source='" & myFile & "';" & _
"Extended Properties=""Excel 12.0;hdr=yes"""
sorgu = _
"Select t2.[VP Name] from [Hedef$] as t1 " & _
"left join " & _
" [Kaynak$] as t2 " & _
"on t1.[Cost centre] = t2.[CC code]"
Con.Open strConnection
Set RS = Con.Execute(sorgu)
WS.Activate
WS.Range("D2").CopyFromRecordset RS
80:
Set RS = Nothing
Con.Close
Set Con = Nothing
Set WS = Nothing
Exit Sub
errMsg:
MsgBox "There seems to be an error" & vbCrLf & Err.Description
End Sub
Ekli dosyalar
-
26.7 KB Görüntüleme: 13