标签: ms-access-2013

Access 2013 - 无法打开使用以前版本的应用程序创建的数据库

我有一个超过10年的Access数据库.

我有非常重要的数据,我认为它可以在Access 2007或更早版本中打开.目前我在桌面上安装了Access 2013并使用此版本打开文件导致错误"无法打开使用以前版本的应用程序创建的数据库"

这个问题的解决方案是什么?有没有我可以下载早期版本的MS Access的地方?

ms-access ms-access-2013

23
推荐指数
4
解决办法
10万
查看次数

如何将.accdb文件导入Python并使用数据?

我试图找到一种方法来创建一个程序,使我能够根据几个不同的因素找到最佳的数据组合.

我有一个包含生物数据的Microsoft Access文件.攻击,防御,健康,需要使用的战斗技能和其他几个信息.

我正在尝试导入此.accdb(Access 2013)文件,并能够访问存储的数据.

我要尽量让该扫描所有数据的程序并运行所有可能的组合(套5个生物)找到的生物为不同需要的战斗能力最强的组合(例如:100战斗技能将使用生物1,2, 3,4和5,其中125战斗技能将使用生物3,5,6,8和10)

我首先需要帮助的主要是能够导入数据库以便于访问,因此我不必在python中重新创建数据,因此我可以在将来使用相同的程序用于新的访问数据库.

我已经安装了https://code.google.com/p/pypyodbc/,但似乎无法弄清楚如何让它加载现有文件.

编辑

我尝试使用Gord的答案代码,修改后的代码以适应我的信息.

# -*- coding: utf-8 -*-
import pypyodbc
pypyodbc.lowercase = False
conn = pypyodbc.connect(
    r"Driver={Microsoft Access Driver (*.mdb, *.accdb)};" +
    r"Dbq=C:\Users\Ju\Desktop\Dark Summoner.accdb;")
cur = conn.cursor()
cur.execute("SELECT Number, Name, Atk, Def, HP, BP, Species, Special FROM Impulse AA+");
while True:
    row = cur.fetchone()
    if row is None:
        break
    print (u"Creature with Number {1} is {1} ({2})".format(
        row.get("CreatureID"), row.get("Name_EN"), row.get("Name_JP")))
cur.close()
conn.close()
Run Code Online (Sandbox Code Playgroud)

打印线出错,所以在它周围添加了().

我现在收到这个错误,类似于我过去的错误.

Traceback (most recent call last):
  File …
Run Code Online (Sandbox Code Playgroud)

python database ms-access ms-access-2013 pypyodbc

15
推荐指数
1
解决办法
3万
查看次数

if语句中的Combobox为null

我正在尝试编写一个if语句,如果某个组合框是null,那么它运行代码的某一部分,如果它有数据,那么它运行另一个.我写了这个:

Private Sub ProjectAddSetDateAutoBtn_Click()
If ProjectAddAllDueDateAutoCmBx = Null Then
'Code1
Msgbox("ComboBox Is Null")
Else
'Code2
Msgbox("ComboBox Has Data")
End If
End Sub
Run Code Online (Sandbox Code Playgroud)

我没有数据保留组合框,然后它不会在if的第一部分或第二部分的代码中运行代码!如果我在框中输入数据,它将完美地运行if语句的第二部分.没有错误,我对此非常难过.ComboBoxes有自己的"Null"吗?这个if语句有问题吗?

ms-access vba access-vba ms-access-2013

10
推荐指数
2
解决办法
5万
查看次数

Access 2013 SQL中的TRANSFORM和PIVOT

如何使用TRANSFORM和PIVOT函数从第一个表中获取第二个表:

TABLE_01

Config_ID  |  ConfigField  |  ConfigValue
-----------------------------------------
       11  |         Name  |        Basic
       11  |      Version  |         1.01
       11  |        Owner  |         Jack
       12  |         Name  |     Advanced
       12  |      Version  |         1.03
       12  |        Owner  |         Andy
Run Code Online (Sandbox Code Playgroud)

TABLE_02

Config_ID  |      Name  |  Version  |  Owner
--------------------------------------------
       11  |     Basic  |     1.01  |  Jack
       12  |  Advanced  |     1.03  |  Andy
Run Code Online (Sandbox Code Playgroud)

我正在尝试这个:

TRANSFORM ConfigValue
SELECT Config_ID
FROM TABLE_01
GROUP BY Config_ID
PIVOT ConfigField  
Run Code Online (Sandbox Code Playgroud)

但得到一个错误:

"您的查询不包含指定的表达式'ACValue'作为聚合函数的一部分."

请帮帮我!

谢谢!

sql pivot ms-access-2013

9
推荐指数
2
解决办法
5万
查看次数

在VBA中使用Unicode文件名(使用Dir,FileSystemObject等)

我正在遍历文件夹中的文件(这意味着我不知道文件夹中的名称),并且有一个带有波兰?字符的文件.

Dir函数将其转换为a l,这意味着以后无法找到文件名.我已经声明了var,我将dir值指定为字符串.

我也尝试过FSO和getfolder也有同样的问题.

我还注意到文件对话框(设置为文件夹选择模式)也会转换上面的字符.


这是一个错误,还是可以解决的问题?

unicode ms-access vba dir ms-access-2013

9
推荐指数
1
解决办法
3639
查看次数

8
推荐指数
2
解决办法
8361
查看次数

如何使用Access 2013将ADP转换为ACCDB?

Access 2013不支持ADP.给出了ADP的一些替代方案:

  • 将ADP转换为链接的Access桌面数据库.
  • 将对象导入ACCDE文件,然后使用早期版本的Access创建现有数据的链接表.

我的ADP仅包含表单,报表,宏和模块.我想在Access 2013中使用此ADP(不在任何早期版本的Access上).

我还没有找到任何方法将ADP转换为链接的Access桌面数据库或将对象导入Access 2013上的ACCDE文件.

如何使用Access 2013将ADP转换为链接的Access桌面数据库或将对象导入ACCDE文件?

adp ms-access-2013

7
推荐指数
1
解决办法
3万
查看次数

Access 2013打印预览中的乱码文本

有一个Access 2013程序的问题,我需要一些外部见解.

我们已将终端服务器从Windows Server 2008 r2升级到Windows Server 2012 r2,将Office 2010 ProPlus 32位升级到Office 2013 ProPlus 32位.

我们有一些访问程序可以通过odbc访问我们的iSeries DB2数据库.在升级之后,所有这些似乎都运行良好,第一个.

特定程序接受工作订单的输入,然后生成要打印的报告.输出是希腊语和英语字符的混合.在报表视图中查看时,文本很好,当您切换到打印预览时,文本会变为乱码.请参阅下面以"批号"开头的屏幕截图行.此报告还包含一份子报告.不确定这是否相关.

报告视图:

报告视图

打印预览:

打印预览

对于非unicode程序,当前语言设置为希腊语,而odbc设置镜像前一个服务器的语言(语言ID和二进制数据的转换).

我也尝试将字体从tahoma更改为arial.

我尝试使用不同的pdf打印机和物理打印机来查看它是否呈现不同的效果.

我在查询级别尝试了strConv([variable],0,[lcid])和strConv([variable],64,[lcid])和各种可能的LCID.虽然我不确定我已经筋疲力尽了.

查看源数据库中基础表中的数据视图,数据也会在查询中正确显示.

不知道这里出了什么问题,有什么想法吗?

ms-access ms-access-2013

7
推荐指数
1
解决办法
307
查看次数

使用VBA向多个收件人发送电子邮件

我有以下代码,允许我附加报告,然后将其发送给一个收件人.

如何将其发送到多个地址?

我已经尝试将地址放在一个数组中,但它给出了"类型不匹配"错误.

Dim strReportName As String
Dim oLook As Object
Dim oMail As Object
Dim olns As Outlook.Namespace
Dim strTO As String
Dim strCC As String
Dim strMessageBody As String
Dim strSubject As String

Set oLook = CreateObject("Outlook.Application")
'Set olns = oLook.GetNamespace("MAPI")
Set oMail = oLook.CreateItem(0)

'*********************** USER DEFINED SECTION ************************
strTO = "chrissparkes@me.com"
strMessageBody = "<---This is an automatically generated email. Please do not respond.---->"
strSubject = "Daily Skip"
'*********************************************************************

With oMail
.To = strTO
 .CC = strCC …
Run Code Online (Sandbox Code Playgroud)

vba ms-access-2013

6
推荐指数
1
解决办法
1万
查看次数

通过VBA获取laccdb文件的内容

我希望能够通过VBA查看访问数据库的laccdb文件的内容,以便我可以使用它来提醒用户(通过按钮)数据库中还有谁.

我特别不想使用第三方工具.我尝试过使用:

Set ts = fso.OpenTextFile(strFile, ForReading)
strContents = ts.ReadAll
Run Code Online (Sandbox Code Playgroud)

如果数据库中只有1个用户,则此工作正常.但对于多个用户来说,它可能会被大概非ASCII字符弄糊涂,并在一次输入后进入这种情况:

完全胡言乱语

有没有人有什么建议?如果我只是在Notepad ++中打开文件就没问题了......


最终使用的代码如下(我不需要标题并删除了一些未使用的代码):

Sub ShowUserRosterMultipleUsers()
Dim cn As New ADODB.Connection, rs As New ADODB.Recordset

cn.Provider = "Microsoft.ACE.OLEDB.12.0"
cn.Open "Data Source=" & CurrentDb.Name

Set rs = cn.OpenSchema(adSchemaProviderSpecific, , "{947bb102-5d43-11d1-bdbf-00c04fb92675}")
While Not rs.EOF
    Debug.Print rs.Fields(0)
    rs.MoveNext
Wend

End Sub
Run Code Online (Sandbox Code Playgroud)

ms-access vba filesystemobject access-vba ms-access-2013

6
推荐指数
1
解决办法
4256
查看次数