我看起来非常激烈,但找不到直接解决我问题的帖子.
我创建的表单的以下代码在Access 2003中工作,我在工作中使用它.
Dim FileName As FileDialog
Set FileName = Application.FileDialog(msoFileDialogFilePicker)
Dim Name As Variant
With FileName
.AllowMultiSelect = False
.Show
If .SelectedItems.Count = 0 Then
MsgBox "No file selected."
Exit Sub
End If
End With
For Each Name In FileName.SelectedItems
FileNameTextBox.Text = Mid$(Name, InStrRev(Name, "\") + 1)
Next Name
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试在我的个人计算机上的Access 2010中的表单上运行相同的代码时,它不起作用.错误消息突出显示第一行并显示"用户定义的类型未定义".我也尝试过宣布FileName as Office.FileDialog,但也没有运气.我确实有Microsoft Access 14.0对象库作为使用中的参考之一,所以我不知道这有什么问题.
我只使用Access两周,而且我所有的知识都来自谷歌搜索,所以很可能我错过了一些明显的东西.
这个问题几乎完成了我想要完成的任务,但是我的表更复杂并且没有主键。我也不太明白最上面的答案,t1 和 t2 是什么意思。如果这个答案适用于我,如果有人解释代码,我将不胜感激。
我有几个月的表格,其中包含有关客户及其持有的保单的信息。每个客户端都有一个唯一的策略 ID,但它们可以有多个策略,从而导致同一策略 ID 下有多个记录。每个字段中的重复记录可以完全不同或完全相同。
出于我的目的,我只想为每个策略 ID 保留一条记录。理想情况下,保留的记录是 Age 最高的记录,但如果太复杂则不需要。请注意,可能有多个记录的年龄是该特定策略 ID 的最大值,那么我们保留其中哪一项并不重要。
我不打算创建主键,因为在某些情况下我会在同一个策略 ID 下保留两条记录,我会自己对代码进行修改。我也不想创建另一个表,因为我正在使用 10 多个表。有人建议使用first(),但我不确定如何将其合并到查询中。
如果您需要任何其他信息,请告诉我,并提前感谢您的帮助!
=========更新#1
好吧,看起来我的问题有点不切实际,所以我将添加一个自动编号主键。我将如何进行?