बाहरी स्रोतों से वर्कशीट में डेटा प्राप्त करने के कई तरीके हैं
आप इंटरनेट, टेक्स्ट फ़ाइलों या अन्य Excel से भी डेटा प्राप्त कर सकते हैं
इसलिए हमें एक डेटाबेस कनेक्शन (वेरिएबल) की आवश्यकता है varConn नीचे मैक्रो में) और एसक्यूएल क्वेरी (चर varSQL ) रिपोर्ट के लिए डेटाबेस से डेटा की पुनर्प्राप्ति को स्वचालित करने के लिए। नीचे दिए गए उदाहरण में है एसक्यूएल क्वेरी , जो MS Access में एक छोटे डेटाबेस से डेटा प्राप्त करता है।
क्लिक डेटाबेस लोड करें
MS Access फ़ाइल इस तरह दिखेगी:
आइए अपना मैक्रो लिखें जो निष्पादित होगा एसक्यूएल क्वेरी .
मेनू खोलें सेवा - मैक्रो - संपादक Visual Basic , नया मॉड्यूल डालें (मेन्यू Insert - Modle ) और वहां मैक्रो टेक्स्ट कॉपी करें:
Sub SQLQuery_1()
'moonexcel.com.ua
Dim varConn As String
Dim varSQL As String
Range("A1").CurrentRegion.ClearContents
varConn = "ODBC;Driver={Microsoft Access Driver (*.mdb, *.accdb)}"
varSQL = "SELECT Month, Product, City FROM Sumproduct"
With ActiveSheet.QueryTables.Add(Connection:=varConn, Destination:=Range("A1"))
.CommandText = varSQL
.Refresh BackgroundQuery:=False
End With
End Sub
सहेजें पर क्लिक करें और Excel पर वापस लौटें। मेनू से चुनें देखें - मैक्रोज़ (Alt+F8) हमारे मैक्रो का नाम " SQLQuery_1 ". एक डायलॉग बॉक्स दिखाई देगा, उसे दबाएं डेटाबेस... , हमारी एक्सेस फ़ाइल देखें और क्लिक करें
अब हम देख सकते हैं कि हमारी मैक्रो क्वेरी ने कॉलम खींच लिए हैं
इसी प्रकार, हम एक नियमित Excel फ़ाइल से डेटा प्राप्त कर सकते हैं जैसे कि किसी डेटाबेस से। इसके लिए हमारे मैक्रो के कोड को थोड़ा दोबारा लिखना होगा और कनेक्शन ड्राइवर को Access से Excel में बदलना होगा।
हम तालिका निर्यात करते हैं
Sub SQLQuery_2()
'moonexcel.com.ua
Dim varConn As String
Dim varSQL As String
Range("A1").CurrentRegion.ClearContents
varConn = "ODBC;Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)}"
varSQL = "SELECT Month, Product, City FROM Sumproduct"
With ActiveSheet.QueryTables.Add(Connection:=varConn, Destination:=Range("A1"))
.CommandText = varSQL
.Refresh BackgroundQuery:=False
End With
End Sub
एक विंडो दिखाई देगी जहां हम अपनी Excel फ़ाइल का चयन कर सकते हैं (जिसे कॉल किया जाना चाहिए)।