Excel Forum
ALTIN ÜYELİK Hakkında Bilgi


Geri Git   Excel Forum > Diğer Yazılımlar > SQL
Atatürk
Şifremi Unuttum

DUYURU SİSTEMİ / REKLAM PANOSU

SQL Yapısal sorgulama dili hakkında sorularınızı buraya sorabilirsiniz.

Özel Arama


Yanıtla
 
Paylaş Konu Araçları Görünüm Modları
Eski 18-11-2016, 14:07   #1
lapot
 
Giriş: 04/07/2006
Mesaj: 215
Varsayılan Excel Query de SQL formulune ekleme

Merhaba arkadaslar

Dosyama Excel Query ile very tablolarinda verileri otamatik olarak aktariyorum asagidaki code ile.

SELECT "AcFeeHistory"."FeeEarnerCode", "AcFeeHistory"."CostsAllocated", "AcFeeHistory"."Period", "AcFeeHistory"."Year", "AcFeeHistory"."BillReference", "AllMatters"."EntityRef", "AllMatters"."Number", "AllMatters"."FeeEarnerRef", "AllMatters"."PartnerRef", "AllMatters"."Description", "AllMatters"."CaseType", "AcFeeHistory"."BillDate", "Entities"."Name", "Users"."FullName", "Entities"."ShortCode"'',

FROM ("Partner"."dbo"."AllMatters" "AllMatters" INNER JOIN (("Partner"."dbo"."AcFeeHistory" "AcFeeHistory" INNER JOIN "Partner"."dbo"."Ac_Billbook" "Ac_Billbook" ON "AcFeeHistory"."TransactionNo"="Ac_Billbook"."Tran sactionNo") INNER JOIN "Partner"."dbo"."Users" "Users" ON "AcFeeHistory"."FeeEarnerCode"="Users"."Code") ON ("AllMatters"."EntityRef"="Ac_Billbook"."EntityRef ") AND ("AllMatters"."Number"="Ac_Billbook"."MatterRef ")) INNER JOIN "Partner"."dbo"."Entities" "Entities" ON "Ac_Billbook"."EntityRef"="Entities"."Code"

Koddaki "AcFeeHistory"."Period" stunu aylari sayi olarak veriyor , yani 1,2,3 diye. Benim vergi ayim April'den basliyor yani period1 = April, period 2 = May ...etc.

Bu dosyaya yeni bir stun eklemek istiyorum Periodu ay olarak yazdirmak icin , yukardaki koda yeni bir kismi ekledim SWITCH komutuyla FROM kisminin uzerine fakat hata veriyor.hatanin resmini ekledim.

Switch komutumda asagida, sizce nerede hata yapiyorum yardim ederseniz cok sevinirim.

Saygilar sunuyorum

Switch ("AcFeeHistory.Period" = 1, "April","AcFeeHistory.Period" = 2, "May","AcFeeHistory.Period" = 3, "June","AcFeeHistory.Period"= 4, "July",
"AcFeeHistory.Period" = 5, "August","AcFeeHistory.Period" = 6, "September","AcFeeHistory.Period" = 7, "October","AcFeeHistory.Period" = 8, "November",
"AcFeeHistory.Period" = 9, "December","AcFeeHistory.Period" = 10, "January","AcFeeHistory.Period" = 11, "February","AcFeeHistory.Period" = 12, "March") as [Month]
Eklenmiş Resimler
Dosya Türü: jpg CaptureSQL error.JPG (29.8 KB, 19 Görüntülenme)
__________________
Excel 2000 - English

Bu mesaj en son " 18-11-2016 " tarihinde saat 14:17 itibariyle lapot tarafından düzenlenmiştir....
lapot Çevrimdışı   Alıntı Yaparak Cevapla
Eski 21-11-2016, 11:28   #2
lapot
 
Giriş: 04/07/2006
Mesaj: 215
Varsayılan

Merhaba tekrar, bu konuda yardimci olcak kimese varmi acaba?


kodu bir ay olarak degistirdim bu sekilde yine hata veriyor


Switch ("AcFeeHistory"."Period" = 1, "April") as [Month]

saygilar sunuyorum
__________________
Excel 2000 - English

Bu mesaj en son " 21-11-2016 " tarihinde saat 12:46 itibariyle lapot tarafından düzenlenmiştir....
lapot Çevrimdışı   Alıntı Yaparak Cevapla
Eski 14-12-2016, 20:35   #3
Levent Menteşoğlu
Administrator
 
Levent Menteşoğlu kullanıcısının avatarı
 
Giriş: 13/10/2004
Şehir: Çorlu
Mesaj: 15,896
Excel Vers. ve Dili:
Excel 2010-Türkçe
Varsayılan

Aşağıdaki gibi deneyin.

SELECT "AcFeeHistory"."FeeEarnerCode", "AcFeeHistory"."CostsAllocated", "AcFeeHistory"."Period", DATENAME(month,DATEFROMPARTS(2016,IIF("AcFeeHistor y"."Period"<10,"AcFeeHistory"."Period"+3,"AcFeeHis tory"."Period"-9),1)), "AcFeeHistory"."Year",.................
__________________
FORUM KURALLARI



"Biz burada hep beraber, sevginin,saygının, alınterinin, mutluluğun makrosunu yazıyoruz. " Kaylan
Levent Menteşoğlu Çevrimdışı   Alıntı Yaparak Cevapla
Eski 02-03-2017, 11:11   #4
bulents
Altın Üye
 
Giriş: 22/02/2005
Şehir: İSTANBUL
Mesaj: 7
Excel Vers. ve Dili:
2007 Türkçe
Varsayılan

Merhaba arkadaşlar

VBA ile aşağıdaki Query sorgusunu nasıl yapabilirim destek olmanız rica.

Teşekkürler ve Saygılar.

SELECT hesplan_0.hes_no, muhfis_detay_0.aciklama, hesplan_0.hes_ad, muhfis_detay_0.borc_tutar, muhfis_detay_0.alacak_tutar FROM UYUM2007.PUB.hesplan hesplan_0, UYUM2007.PUB.muhfis_detay muhfis_detay_0 WHERE muhfis_detay_0.firma_kod = hesplan_0.firma_kod AND muhfis_detay_0.hes_no = hesplan_0.hes_no AND ((hesplan_0.firma_kod='ELKAY-15') AND (muhfis_detay_0.fis_tarih Between {d '2017-01-01'} And {d '2017-01-31'}))
__________________
ing
bulents Çevrimdışı   Alıntı Yaparak Cevapla
Eski 02-03-2017, 11:30   #5
asri
Altın Üye
 
Giriş: 24/04/2005
Şehir: Istanbul
Mesaj: 2,374
Excel Vers. ve Dili:
Office 2016 TR 64 Bit
Varsayılan

Çalışan bir koddan düzenleme yaptım. Kodu denemedim.

Aşağıdaki şekilde deneyiniz.

VBA/ Tools/ References/ Microsoft ActiveX Data Objects 6.1 Library seçili olmalı.

Kırmızı alanları sizdeki bilgilere göre güncelleyiniz.

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Option Explicit
Private CN As ADODB.Connection
Dim barkod, masasi, kart As String
Dim sayi As Integer

Dim RS As ADODB.Recordset
Dim Field As ADODB.Field
Dim Col As Long
Dim s As String
 
Dim SQL As String
Dim Connected As Boolean
 
Function Disconnect()
    CN.Close
End Function

Sub SQLsorgu()
    Connected = Connect("SERVER IP", "DATABASEADI", "KULLANICIADI", "SIFRESI")
    If Connected Then
        Set RS = New ADODB.Recordset
      
        SQL = ""
        SQL = SQL + " SELECT hesplan_0.hes_no, muhfis_detay_0.aciklama, hesplan_0.hes_ad, muhfis_detay_0.borc_tutar, muhfis_detay_0.alacak_tutar"
        SQL = SQL + " FROM UYUM2007.PUB.hesplan hesplan_0, UYUM2007.PUB.muhfis_detay muhfis_detay_0 "
        SQL = SQL + " WHERE muhfis_detay_0.firma_kod = hesplan_0.firma_kod AND muhfis_detay_0.hes_no = hesplan_0.hes_no AND ((hesplan_0.firma_kod='ELKAY-15') AND (muhfis_detay_0.fis_tarih Between {d '2017-01-01'} And {d '2017-01-31'}))"
      
        RS.Open SQL, CN, adOpenStatic, adLockReadOnly, adCmdText
     
        If RS.RecordCount = 0 Then
             MsgBox "Kayıt bulunamadı."
        Else
          If RS.State Then
             Col = 1
             For Each Field In RS.Fields
               Cells(5, Col) = Field.Name
               Col = Col + 1
             Next Field
             Cells(6, 1).CopyFromRecordset RS
             Set RS = Nothing
          End If
       End If
        Call Disconnect
   End If
            
End Sub


Function Connect(Server As String, Database As String, kullanici As String, sifre As String) As Boolean
 
    Set CN = New ADODB.Connection
    On Error Resume Next
 
    With CN
      .ConnectionString = "Provider=SQLOLEDB.1;" & _
                             "Persist Security Info=False;" & _
                             "Initial Catalog=" & Database & ";" & _
                             "Data Source=" & Server & ";" & _
                             "User ID=" & kullanici & ";Password=" & sifre & ";"
        .Open
    End With
    
    ' Check connection state
    If CN.State = 0 Then
        Connect = False
    Else
        Connect = True
    End If
 
End Function
__________________
www.asriakdeniz.com
asri Çevrimdışı   Alıntı Yaparak Cevapla
Eski 06-03-2017, 10:41   #6
bulents
Altın Üye
 
Giriş: 22/02/2005
Şehir: İSTANBUL
Mesaj: 7
Excel Vers. ve Dili:
2007 Türkçe
Varsayılan

Teşekkürler deneme yapıp dizede bilgi vericem
__________________
ing
bulents Çevrimdışı   Alıntı Yaparak Cevapla
Yanıtla


Konu Araçları
Görünüm Modları

Gönderme Kuralları
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
SimgelerAçık
[IMG] kodu Açık
HTML kodu Kapalı


Saat 15:11


Bu forum Elit NET - www.elitnet.com.tr tarafından sunulmaktadır.

Excel Eğitimi - Mobil Uygulama - Çorlu - Çorlu Web Tasarım - Tarot Falı - invest in turkey - Lingerie - Dyeing Machine - Karton Bardak- Çorlu Özel Eğitim- Site Yönetimi- Led Aydınlatma- Pronet Tekirdağ- Çorlu Kamera- Pronet Edirne- Pronet Kırklareli- Pronet Çerkezköy- Pronet Çorlu- Pronet Lüleburgaz- Pronet Keşan- Çorlu Araç Takip- Çorlu Su Arıtma- Boru Profil- Gebze Emlak- Beylikdüzü Temizlik- İstanbul Burun Estetiği- Bakır Sülfat- Rampa- Rotary- Çorlu İnternet Sitesi- youngblood- Çorlu Palet- Çerkezköy Palet- Çorlu Prefabrik- Çorlu Sürücü Kursu- Çorlu Sandviç Panel- Şişli Avukat- Korona Test Kalemi- Çorlu Vinç- Çorlu Pimapen Tamiri- Çorlu Çelik Konstruksiyon-
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Advertisement System V2.6 By   Branden