2016-12-05 71 views
0

我遇到了一些我不知道如何解決的編碼問題。我想在表中記錄同一數據庫中另一個表的字段名稱。訪問VBA將字段的名稱作爲記錄

我給你舉個例子:

表1 What I have

表2 What I want

表1是從外部源每週更新,所以我需要記錄的字段名稱爲使用VBA語言記錄在第二個表中。有人知道是否有可能?

預先感謝您

回答

1

你可以做這樣的事情

Dim db As Database 
Dim fld As Field 
Dim sql As String 
Set db = CurrentDb 

For Each fld In db.TableDefs("YourTable").Fields 

    sql = "Insert into YourSummaryTable([Date], Hours) select '" & fld.Name & "', sum([" & fld.Name & "]) as s from YourTable" 
    DoCmd.RunSQL sql 


Next fld 

注意,你已經使用了保留字Date作爲一個字段名,這是不是最好的做法,並要求使用查詢中的方括號。

+0

嘿你是代碼工作得很好。但是,當我運行它時,會出現一個窗口,其中每個字段的名稱都有「輸入參數值」。有沒有一種方法我不需要在最後輸入任何內容,並且記錄保留了域的名稱? –

+0

你的'Date'字段是什麼數據類型? – GavinP

+0

它可以是我想要的任何東西。但我更喜歡日期\時間或短文本 –