ADOlogging集中的最大字段

我正在尝试在访问和excel中的用户窗体中build立一个安全的数据库。 我理解所有的VBA和大部分的语法,用于发送和接收来自excel的数据。 我的问题是,我只能写64字段(0-63)我有超过75列,我想在访问和Excel之间来回移动。 这是我的一些代码,它不清楚。

' open the database based on type of save Set cn = New ADODB.Connection cn.Open "Provider=Microsoft.ace.OLEDB.12.0; Data Source=" & DBFullName & ";" Set rs = New ADODB.Recordset With rs ' open the recordset '.MaxRecords = 70 .Open "SELECT * FROM " & TableName & " WHERE [Task_Number] = '" & MyCriteria & "'", cn, adOpenKeyset, adLockOptimistic countfields = .Fields.Count 'Returns 132 .Fields(60).Value = "60" 'Works .Fields(61).Value = "61" 'Works .Fields(62).Value = "62" 'Works .Fields(63).Value = "63" 'Works .Fields(64).Value = "64" 'Does not work .Fields(65).Value = "65" 'Does not work .Fields(66).Value = "66" 'Does not work .Fields(80).Value = "80" 'Does not work .Update ' stores the new record End With rs.Close Set rs = Nothing cn.Close Set cn = Nothing 

.MaxRecords设置为0(无限),但我也试图将其更改为我需要的logging数和我的logging集中有多less个字段。

之后请将此添加到您的代码中

 countfields = .Fields.Count 'Returns 132 

看看会发生什么

 Dim intLoop as long For intLoop = 0 To (.fields.Count - 1) With rs.fields.Item(intLoop) Debug.Print .Name, .value, .type, .DefinedSize End With Next 

谢谢你的答复,但我能弄清楚为什么我有问题。 我是新来的访问,当我build立表时,前64列被格式化为文本,但是当我添加更多列时,他们被格式化为date…因此,当我试图把文本或数字放入字段,辍学和行为就像无法访问它。 哈维法国你的回应会帮助我弄清楚这一点,我希望我能早日提出这个问题。

再次感谢! 我希望这有助于下一个有类似问题的人。