2014-02-06 30 views
0

我有一個Excel VBA工作簿,我已經創建。它有一個控制面板頁面,其中安裝了一個按鈕,用於運行鍼對我們的SQL數據庫運行的VB/ASP腳本。我創建了用於輸入日期的文本框,並將這些用作用於抽取單個工作表(報表)的VB/ASP腳本的輸入。現在,我想從ENVIRON(「UserName」)聲明用戶名,然後根據用戶名列表評估用戶名,並將user_id(又名UserNumber)返回到控制面板頁面上的文本框(sql數據庫中的user_id)。 示例:如果sjones已登錄到窗口,則評估用戶名列表= 165?,然後 Var1 = Var1 &「OR(pd.created_by ='」+ Sheets(「Control Panel」).UserNumber.Text +「')) 「& vbCrLfVBA Excel工作簿與數據庫連接到SQL服務器需要登錄信息

我想根據當時登錄Windows的人提取報告,以防止其他人爲除他們自己以外的任何人運行報告。工作表位置對所有用戶開放,但我希望他們僅爲登錄的用戶運行報告?有可能是一個更簡單的方法來做到這一點,但我在VB/ASP非常薄弱。請幫忙。 TIA Conya

+0

你在哪裏遇到問題?發佈代碼的相關部分,有人可能會提供幫助。 –

+0

你真的在使用ASP嗎?如果您使用ASP,您如何與ASP服務器通信? –

回答

0

獲取用戶名並執行sql查詢以獲取與其關聯的用戶標識。代碼可能如下所示:

Public UName, UID as String 

Public Sub GetUName() 
    UName = Environ("USERNAME") 
End Sub 

Public Sub GetUID() 
    strSQL = "Select UID from table1 where username=" & "'" UName & "'" 
    UID = oConn.Execute strSQL 
End Sub 
相關問題