Anton T
Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Добрый вечер! В екселе на листбоксе список домов в количестве 40 шт., передается в базы, но в базе всего лишь один дом, а 39 пропущено! Как решить? Код: Private Sub CommandButton2_Click() Dim dbs As Database Dim aaa As TableDef Dim rst As Recordset Dim WS As Worksheet Dim i As Integer rw = ListBox1.ListCount cl = ListBox1.ColumnCount Set dbs = OpenDatabase("C:\access-excel\db1.mdb") 'Открываем в памяте Set aaa = dbs.CreateTableDef(TB2.Value) 'В аксессе содзает имя With aaa .Fields.Append .CreateField("F", dbText) .Fields.Append .CreateField("N", dbText) .Fields.Append .CreateField("O", dbText) .Fields.Append .CreateField("G", dbText) .Fields.Append .CreateField("A", dbText) .Fields.Append .CreateField("D", dbText) .Fields.Append .CreateField("K", dbText) .Fields.Append .CreateField("K1", dbText) .Fields.Append .CreateField("K2", dbText) .Fields.Append .CreateField("S", dbText) .Fields.Append .CreateField("R", dbText) .Fields.Append .CreateField("C", dbText) .Fields.Append .CreateField("D1", dbText) End With dbs.TableDefs.Append aaa Set rst = dbs.TableDefs(TB2.Value).OpenRecordset(dbOpenDynaset) With rst .AddNew .Fields("F").Value = CStr(Cells(rw, cl - 12).Value) .Fields("N").Value = CStr(Cells(rw, cl - 11).Value) .Fields("O").Value = CStr(Cells(rw, cl - 10).Value) .Fields("G").Value = CStr(Cells(rw, cl - 9).Value) .Fields("A").Value = CStr(Cells(rw, cl - 8).Value) .Fields("D").Value = CStr(Cells(rw, cl - 7).Value) .Fields("K").Value = CStr(Cells(rw, cl - 6).Value) .Fields("K1").Value = CStr(Cells(rw, cl - 5).Value) .Fields("K2").Value = CStr(Cells(rw, cl - 4).Value) .Fields("S").Value = CStr(Cells(rw, cl - 3).Value) .Fields("R").Value = CStr(Cells(rw, cl - 2).Value) .Fields("C").Value = CStr(Cells(rw, cl - 1).Value) .Fields("D1").Value = CStr(Cells(rw, cl).Value) .Update .Close End With dbs.Close End Sub |
|