SQL de Koşulun Excel'de Belirtilmesi ???

Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
Arkadaşlar ben sql kullanarak istediğim tüm sorguları excele getiriyorum. Ama yapmak istediğim tasarladığım bir raporun değişken koşulunu (malzeme, tarih v.b) excel hücresinde belirtiyim ve soegumu o koşula göre alayım benim hep yapmak istediğim bir olay bu. Bunu yapabilen varsa örnekle açıklarsa çok sevinirim.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,286
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Alan isimlerini veri tipiyle birlikte ve hangi hücrelerden referans alınacağını belirtirseniz somut bir çözüm olur.
 
Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
ÖrneĞİn
ad mİktar
Elma 25kg
Armut 50kg

BÖyle Bİr Verİ Tabani Var Ben A1 Elma YazdiĞimda A2 25 Gelsİn
Basİt Bİr Örnek Ama Benİm İstedİĞİm A1 Elma YazdiĞimda Sql Sorgumdakİ KoŞula Elmayi Manuel DeĞİl Otomatİk Yaptirmak
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,286
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Kod:
select sum(miktar) from tablo_adi where ad =' & [a1] & "'";
 
Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
SELECT LG_998_ITEMS.CODE, LG_998_ITEMS.NAME, LG_998_ITEMS.STGRPCODE, LG_998_ITEMS.SPECODE, LG_998_MARK.CODE
FROM TIGERDB.dbo.LG_998_ITEMS LG_998_ITEMS, TIGERDB.dbo.LG_998_MARK LG_998_MARK
WHERE LG_998_ITEMS.MARKREF = LG_998_MARK.LOGICALREF AND ((LG_998_ITEMS.STGRPCODE='TKN'))

BEN BURDA TKN Yİ G1 HÜCRESİNDE BELİRTİYORUM NASIL OLMALI BU ARADA BEN MICROSOFT QUERY İLE ALIYORUM SORGUYU
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,286
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
SELECT LG_998_ITEMS.CODE, LG_998_ITEMS.NAME, LG_998_ITEMS.STGRPCODE, LG_998_ITEMS.SPECODE, LG_998_MARK.CODE
FROM TIGERDB.dbo.LG_998_ITEMS LG_998_ITEMS, TIGERDB.dbo.LG_998_MARK LG_998_MARK
WHERE LG_998_ITEMS.MARKREF = LG_998_MARK.LOGICALREF AND ((LG_998_ITEMS.STGRPCODE='TKN'))

BEN BURDA TKN Yİ G1 HÜCRESİNDE BELİRTİYORUM NASIL OLMALI BU ARADA BEN MICROSOFT QUERY İLE ALIYORUM SORGUYU
M$ Query ile yapamazsınız. İşlemi, Excelden ADO ile yapacağınızı varsayıyorum.

Kod:
SELECT LG_998_ITEMS.CODE, LG_998_ITEMS.NAME, LG_998_ITEMS.STGRPCODE, LG_998_ITEMS.SPECODE, LG_998_MARK.CODE
FROM TIGERDB.dbo.LG_998_ITEMS LG_998_ITEMS, TIGERDB.dbo.LG_998_MARK LG_998_MARK
WHERE LG_998_ITEMS.MARKREF = LG_998_MARK.LOGICALREF AND ((LG_998_ITEMS.STGRPCODE='" & [G1] & "'))
 
Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
Bu Şekİlde Olmuyor Mİcrosoft Query ((lg_998_items.stgrpcode='" & [g1] & "')) Tanimiyor Hata Verİyor
 
Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
G1 DeĞerİ 'tkn' Yerİne '" & [g1] & "' Fİltrede Kullanmaya ÇaliŞiyor Verİ Gelmİyor Dolayisi İle
 
Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
Pardon Ado İle Nasil Yaparim Kisa Bİr Bİlgİ Verİrmİsİnİz
 
Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
Ado İle Nasil BaĞlanip Sorgu Alirim Yada Hangİ MenÜden UlaŞabİlİrİm Arama Yaptim Ama Ado İle İlgİlİ Bİr Şey Çikmadi
 

Rafet

Altın Üye
Katılım
24 Mart 2005
Mesajlar
230
Excel Vers. ve Dili
Ofice 2010 - Türkçe
Altın Üyelik Bitiş Tarihi
01-12-2025
Kod:
SELECT LG_998_ITEMS.CODE, LG_998_ITEMS.NAME, LG_998_ITEMS.STGRPCODE, LG_998_ITEMS.SPECODE, LG_998_MARK.CODE
FROM TIGERDB.dbo.LG_998_ITEMS LG_998_ITEMS, TIGERDB.dbo.LG_998_MARK LG_998_MARK
WHERE LG_998_ITEMS.MARKREF = LG_998_MARK.LOGICALREF AND ((LG_998_ITEMS.STGRPCODE='" & [G1] & "'))
[/QUOTE]

" & [G1] & " Yerine " & Range("G1") & " olarak deneyin.

Karmasık olacağını düşünüyorsanız ve bence yazdığınız kodların okuna bilirliğini arttırmak istıyosanız macroyu yazarken değişkenler olarak belirterek başlayın.

Where de LG_998_ITEMS.STGRPCODE ile süzmek istediğimiz bir kod anladığım akdarıyla .

kod1 = Sheets("SayfaAdi").Range("G1") deyin

Kodu yazarkende.
" & [G1] & " yerine " & kod1 & " yazın.

tarihlerde sıkıntı cekersiniz onuda şimdiden yazım.
bastarihi = format ( Range("A1"),"yyyy-mm-dd" ) olarak belirtin.

burda yaptığımız 31.12.2007 yi 2007-12-31 formatına cevirmek SQL bunu okur. SQL den Excele cevirirkende sorun yaşarsınız bunun içinde SQL Komutu kullana bilirsiniz. Ama excel biçimlendirmeyi kullanmak daha kolaydır.

Birde değişkenleri A1 Hüçresi A2 hüçresi oalrak kullanmayın.

A1 hüçresine AD verin. Range("A1") diyeceğinize Range("VERİLENAD") bu satır sutun eklemelerinde size zorluk yaratmaması için çok kullanışlı. olır.
 
Katılım
29 Haziran 2005
Mesajlar
158
Excel Vers. ve Dili
MS Office Professional Plus 2013 64 Bit -Eng
MSSQL 2012 R2 64 Bit
Kod:
SELECT LG_998_ITEMS.CODE, LG_998_ITEMS.NAME, LG_998_ITEMS.STGRPCODE, LG_998_ITEMS.SPECODE, LG_998_MARK.CODE
FROM TIGERDB.dbo.LG_998_ITEMS LG_998_ITEMS, TIGERDB.dbo.LG_998_MARK LG_998_MARK
WHERE LG_998_ITEMS.MARKREF = LG_998_MARK.LOGICALREF AND ((LG_998_ITEMS.STGRPCODE='" & [G1] & "'))
" & [G1] & " Yerine " & Range("G1") & " olarak deneyin.

Karmasık olacağını düşünüyorsanız ve bence yazdığınız kodların okuna bilirliğini arttırmak istıyosanız macroyu yazarken değişkenler olarak belirterek başlayın.

Where de LG_998_ITEMS.STGRPCODE ile süzmek istediğimiz bir kod anladığım akdarıyla .

kod1 = Sheets("SayfaAdi").Range("G1") deyin

Kodu yazarkende.
" & [G1] & " yerine " & kod1 & " yazın.

tarihlerde sıkıntı cekersiniz onuda şimdiden yazım.
bastarihi = format ( Range("A1"),"yyyy-mm-dd" ) olarak belirtin.

burda yaptığımız 31.12.2007 yi 2007-12-31 formatına cevirmek SQL bunu okur. SQL den Excele cevirirkende sorun yaşarsınız bunun içinde SQL Komutu kullana bilirsiniz. Ama excel biçimlendirmeyi kullanmak daha kolaydır.

Birde değişkenleri A1 Hüçresi A2 hüçresi oalrak kullanmayın.

A1 hüçresine AD verin. Range("A1") diyeceğinize Range("VERİLENAD") bu satır sutun eklemelerinde size zorluk yaratmaması için çok kullanışlı. olır.[/quote]

Hocam ; Mükemmel bir konuya temas ettiğiniz için teşekkür ederim...Fakat ne kadar uğraştımsa da EXCEL Hücresinden MSQUERY içerisine TARİH formatını yerleştiremedim....SYNTAX ERROR veriyor sürekli....

Kod aşağıdaki gibidir...


SELECT
LG_086_CLCARD.CODE AS CH_Kodu,
LG_086_CLCARD.DEFINITION_ AS Ünvanı,
SUM(DISTINCT LG_086_01_INVOICE.NETTOTAL) AS TUTAR,
SUM(LG_086_01_STLINE.AMOUNT * LG_086_01_STLINE.OUTCOST) AS [Toplam Maliyet],
SUM(DISTINCT LG_086_01_INVOICE.NETTOTAL) - SUM(LG_086_01_STLINE.AMOUNT * LG_086_01_STLINE.OUTCOST) AS KAR
FROM
LG_086_CLCARD INNER JOIN LG_086_01_INVOICE ON LG_086_CLCARD.LOGICALREF = LG_086_01_INVOICE.CLIENTREF INNER JOIN LG_086_01_STLINE ON LG_086_01_INVOICE.LOGICALREF = LG_086_01_STLINE.INVOICEREF WHERE (LG_086_01_INVOICE.DATE_ = CONVERT(DATETIME, '2008-02-04 00:00:00', 102)) AND (LG_086_01_INVOICE.TRCODE = 8) AND (LG_086_01_INVOICE.CANCELLED = 0) AND (LG_086_01_STLINE.LINETYPE = 0)
GROUP BY LG_086_CLCARD.CODE, LG_086_CLCARD.DEFINITION_
ORDER BY LG_086_CLCARD.CODE

H5 hücresinde 04.02.2008 bilgisini girdiğimde Sorgunun çalışmasını istiyorum...tabiki önceki günleri ve sonraki günleride gidrdiğimde SQL kodunun H5 hücresine girdiğim TARİHİ algılaması gerekir , şimdiden yardımlarınız için teşekkürederim....

Bu arada , yukarıdaki SQL Kodu LOGO veritabanında Malzeme Satış Karlılıklarını görmeye yarayan koddur...Amacım Günlük Satış Karlılıkların ( Fon Maliyeti Hariç) görebilmek , gösterebilmektir...

Konu ile ilgilisi yok ama , Karlılıklıların görülebilmesi için HER GÜN COST çalıştırılması gerekir ve ancak bir gün öncesinin KARLILIĞINI görebilirsiniz , LSU arkadaşlara duyurulur :)

Kolay gelsin , iyi çalışmalar...
 
Son düzenleme:
Katılım
3 Mart 2008
Mesajlar
4
Excel Vers. ve Dili
v11 Türkçe
Öff öff.. yıllar sonra girdim bu foruma yine çıkacam. çocukken bir hostese bilgisayar satmıştım.

Makinayı kurdum, çıkacakken hostes bir ricada bulundu : "nasıl kullanıldığını bir gösterseniz?" Sanki süpürge makinası satın almıştı. Ben de tüm sabrımı toplayıp nasıl açılıp kapandığını, yeni dosyanın nasıl oluştuğunu/silindiğini, internete nasıl girildiğini anlattım.

Şimdi kardeş, MS SQL'i bir kere açıp, 1/2 saat incelesen, elindeki logonun herhangi bir raporunu MSSQL de 5 dakika takip etsen şu yukarıdaki gibi komik ötesi sorular sormazdın.

Kaldı ki Standart SQL le de uğraşmayıp bir de 3.parti den ado yapmak istiyorsun ;o)
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Öff öff.. yıllar sonra girdim bu foruma yine çıkacam. çocukken bir hostese bilgisayar satmıştım.

Makinayı kurdum, çıkacakken hostes bir ricada bulundu : "nasıl kullanıldığını bir gösterseniz?" Sanki süpürge makinası satın almıştı. Ben de tüm sabrımı toplayıp nasıl açılıp kapandığını, yeni dosyanın nasıl oluştuğunu/silindiğini, internete nasıl girildiğini anlattım.

Şimdi kardeş, MS SQL'i bir kere açıp, 1/2 saat incelesen, elindeki logonun herhangi bir raporunu MSSQL de 5 dakika takip etsen şu yukarıdaki gibi komik ötesi sorular sormazdın.

Kaldı ki Standart SQL le de uğraşmayıp bir de 3.parti den ado yapmak istiyorsun ;o)
Sen nasıl birisisin ya ... Bu ne kibir, bu ne yüksekten bakıştır böyle ... Soru soran üyeleri aşağılama hakkını kim veriyor size ? Yazık ...
 
Katılım
3 Mart 2008
Mesajlar
4
Excel Vers. ve Dili
v11 Türkçe
yok kardeş.. biz sahiden sahi analiz yaparak, analitik çalışalım, kafayı patlatalım.

Bir başka arkadaş.. benim yerime kafa patlatanlar olmuştur.. ben bir sorayım bir "yardım sever" atlar ne de olsa diyordur.

yok sorduğu soru sahiden yanında bir uğraşmışlık getirse "canım feda" fakat milletçe löpçü-hazırcı ve tembel olmuşuz.. beni en çok üzen ise bilişim dünyasında da böyle olması!
 
Katılım
29 Haziran 2005
Mesajlar
158
Excel Vers. ve Dili
MS Office Professional Plus 2013 64 Bit -Eng
MSSQL 2012 R2 64 Bit
yok kardeş.. biz sahiden sahi analiz yaparak, analitik çalışalım, kafayı patlatalım.

Bir başka arkadaş.. benim yerime kafa patlatanlar olmuştur.. ben bir sorayım bir "yardım sever" atlar ne de olsa diyordur.

yok sorduğu soru sahiden yanında bir uğraşmışlık getirse "canım feda" fakat milletçe löpçü-hazırcı ve tembel olmuşuz.. beni en çok üzen ise bilişim dünyasında da böyle olması!
Ukala kardeşim sqlinvader ; Tespitlerini benim için mi yaptın ? Tam da bu tespitleri yapılacak adama yapmışsın bravo ! , Sen bir kere benim 3.cü partiden ADO yapma gerekliliğimi anlamamışsın , öfffleyip pufflamanı o yüsden doğal karşılıyorum.ilerizekalı arkadaşım, ben geriye yönelik , her hangi bir tarihdeki KARLILIK raporunu almak istediğimde sürekli SQL kodundaki tarihi elimle değiştirmek istemiyorum....onun yerine böyle bir çalışma yapıyorum ki zaman kazandıran bir çalışma yapmış olayım....vakit bulduğumda seninle ayrıyetden de ilgileneceğim....:)

hakkımda çok sey merak edersen....

www.logodestek.gen.tr
www.lsuersoy.gen.tr
www.halkalikoyu.com
www.marmaralicotanaklar.net

adreslerine bakabilirsin.
 
Üst