SQL Sorguda Tarih'i Excel'de tanımlatabilmek..

oburs

Altın Üye
Katılım
23 Mayıs 2005
Mesajlar
121
Excel Vers. ve Dili
Excel 2003
Excel 2007
Altın Üyelik Bitiş Tarihi
02.03.2026
öncelikle rahatsızlık için kusuruma bakmayaın..
tiger kullanıcısı olarak excel'e dış veri al ile veri almaktayım velakin excelde belirlemiş olduğum tarihleri SQL'i sınırlandırabilirimiyim...
ayrıca tarih sınırlaması yaparken ek olarak sınırlamalarda mümkün olabilrimi..
kısaca birden fazla şart koyarak SQL'den gelen dataları sınırlama imkanı olabilirmi..

şimdiden yardımlarınız için teşekkür ederim..


---------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------SELECT dbo.LG_311_CLCARD.CODE AS [CH.KODU], dbo.LG_311_CLCARD.DEFINITION_ AS ÜNVANI,
dbo.LG_311_01_STLINE.AMOUNT * dbo.LG_311_01_STLINE.OUTCOST AS MALİYET, dbo.LG_311_01_INVOICE.FICHENO AS [FATURA NR],
dbo.LG_311_01_INVOICE.DATE_ AS [FATURA TARİHİ], dbo.LG_311_01_STFICHE.FICHENO AS [İRS.NR.],
dbo.LG_311_01_STFICHE.DATE_ AS [İRS.TARİHİ], dbo.LG_311_ITEMS.CODE AS [MALZEME KODU],
dbo.LG_311_ITEMS.NAME AS [MALZEME AÇIKLAMASI], dbo.LG_311_ITEMS.STGRPCODE AS [GRUP KODU],
dbo.LG_311_ITEMS.SPECODE AS DURUMU, dbo.LG_311_01_STLINE.LINENET AS TUTAR, dbo.LG_311_01_INVOICE.TRCODE AS [FATURA TÜRÜ],
dbo.LG_311_ITEMS.CYPHCODE AS GRUP, dbo.LG_311_01_INVOICE.CAPIBLOCK_CREADEDDATE AS [FTR.OLUŞTURMA TARİHİ],
dbo.LG_311_01_STLINE.AMOUNT
FROM dbo.LG_311_01_STFICHE INNER JOIN
dbo.LG_311_CLCARD ON dbo.LG_311_01_STFICHE.CLIENTREF = dbo.LG_311_CLCARD.LOGICALREF INNER JOIN
dbo.LG_311_01_STLINE INNER JOIN
dbo.LG_311_01_INVOICE ON dbo.LG_311_01_STLINE.INVOICEREF = dbo.LG_311_01_INVOICE.LOGICALREF ON
dbo.LG_311_01_STFICHE.LOGICALREF = dbo.LG_311_01_STLINE.STFICHEREF INNER JOIN
dbo.LG_311_ITEMS ON dbo.LG_311_01_STLINE.STOCKREF = dbo.LG_311_ITEMS.LOGICALREF
WHERE (dbo.LG_311_01_INVOICE.CANCELLED = 0) AND (dbo.LG_311_01_STLINE.LINETYPE = 0) AND (dbo.LG_311_01_INVOICE.TRCODE = 8) AND
(dbo.LG_311_01_INVOICE.DATE_ >= ? AND dbo.LG_311_01_INVOICE.DATE_ <= ?) OR
(dbo.LG_311_01_INVOICE.TRCODE = 3)

---------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
 
Katılım
22 Nisan 2005
Mesajlar
486
Excel Vers. ve Dili
tarkan@tarkanvural.com.tr
SQL 'de where diye bir şartlandırma komutu vardır. Bu komutu incelemenizi öneririm. Sizin deyiminizle sınırlandırıyor. Yani şu ise ,bu ise, şöyle ise, şunların aralığında ise gibi şartlandırmalar yapabilirsiniz. ;)
 

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
SELECT dbo.LG_311_CLCARD.CODE AS [CH.KODU], dbo.LG_311_CLCARD.DEFINITION_ AS ÜNVANI,
dbo.LG_311_01_STLINE.AMOUNT * dbo.LG_311_01_STLINE.OUTCOST AS MALİYET, dbo.LG_311_01_INVOICE.FICHENO AS [FATURA NR],
dbo.LG_311_01_INVOICE.DATE_ AS [FATURA TARİHİ], dbo.LG_311_01_STFICHE.FICHENO AS [İRS.NR.],
dbo.LG_311_01_STFICHE.DATE_ AS [İRS.TARİHİ], dbo.LG_311_ITEMS.CODE AS [MALZEME KODU],
dbo.LG_311_ITEMS.NAME AS [MALZEME AÇIKLAMASI], dbo.LG_311_ITEMS.STGRPCODE AS [GRUP KODU],
dbo.LG_311_ITEMS.SPECODE AS DURUMU, dbo.LG_311_01_STLINE.LINENET AS TUTAR, dbo.LG_311_01_INVOICE.TRCODE AS [FATURA TÜRÜ],
dbo.LG_311_ITEMS.CYPHCODE AS GRUP, dbo.LG_311_01_INVOICE.CAPIBLOCK_CREADEDDATE AS [FTR.OLUŞTURMA TARİHİ],
dbo.LG_311_01_STLINE.AMOUNT
FROM dbo.LG_311_01_STFICHE INNER JOIN
dbo.LG_311_CLCARD ON dbo.LG_311_01_STFICHE.CLIENTREF = dbo.LG_311_CLCARD.LOGICALREF INNER JOIN
dbo.LG_311_01_STLINE INNER JOIN
dbo.LG_311_01_INVOICE ON dbo.LG_311_01_STLINE.INVOICEREF = dbo.LG_311_01_INVOICE.LOGICALREF ON
dbo.LG_311_01_STFICHE.LOGICALREF = dbo.LG_311_01_STLINE.STFICHEREF INNER JOIN
dbo.LG_311_ITEMS ON dbo.LG_311_01_STLINE.STOCKREF = dbo.LG_311_ITEMS.LOGICALREF
WHERE (dbo.LG_311_01_INVOICE.CANCELLED = 0) AND (dbo.LG_311_01_STLINE.LINETYPE = 0) AND (dbo.LG_311_01_INVOICE.TRCODE = 8) AND
(dbo.LG_311_01_INVOICE.DATE_ >= ? AND dbo.LG_311_01_INVOICE.DATE_ <= ?) OR
(dbo.LG_311_01_INVOICE.TRCODE = 3)
tairh başlangıcı ve sonunu excelde herhangi bir hücrede belirttikten sonra iki değişkene (tarih1 ve tarih2 değişkeni) atayıp bunları cümlenin içine yerleştirerek istediğinizi yapa bilirsiniz.
Kod:
tarih1 = format(Range("A1"),"yyyy-mm-dd")
tarih2 = format(Range("B1"),"yyyy-mm-dd")

dbo.LG_311_01_INVOICE.DATE_  [color=blue]BETWEEN[/color]  '[color=red]" & tarih1 & "[/color]' AND '[color=red]" & tarih2 & "[/color]'
BETWEEN iki tanım arasını almak için kullanılır.

Küçük bir not: değişkenleri verdiğiniz hüçre adreslerini kullanmak yerine hücreye ad atayaran yaparsanız sizin için ilerki çalışmalarınızda daha kolaylık saglaya bilir. Yani A1 Hüçresine Faturalar_tarih1 ad atarsanız
tarih1 = format(Sheets("Sizin Sayfa adiniz").Range("Faturalar_tarih1"),"yyyy-mm-dd") dersiniz.
 
Üst