2015-06-18 4 views
0

Итак, у меня есть сплит db.MS Access падает каждый раз при попытке открыть Visual Basic

dbBackEnd: Lives on the network drive, users don't touch it except through the front ends. 
dbFrontEndv1:Stored by me for safekeeping, works fine 
dbFrontEndv2:Stored by me for safekeeping, works fine 
dbFrontEndv3:Users are interacting with this now, works fine 
dbFrontEndv4: Freezes every time I try to do something in VBA 

Игра, в которой я играл полдюжины раз, - это.

(1) Скопировать dbFrontEndv3 в новую папку и переименовать его dbFrontEndv4.

(2) Открыть dbFrontEndv4 и открыть Form1. Если я сейчас сохраню и снова заработаю, все будет хорошо.

(3) Добавить 1 или 2 командных кнопки. Командные кнопки, запускающие макросы, работают нормально. Здесь есть проблемы с VBA.

(4) Скомпилируйте, никаких ошибок.

(4) Сохранить и выйти

(5) Открыть dbFrontEndv4, щелкните форму или что-нибудь еще, относящуюся к VBA.

(6) Ошибки:.. "Microsoft Access не отвечает ...", «Acces перезагружается

После добавления и вычитания подлодки, сохранения, закрытия и повторного открытия, это, кажется, нарушивший один

Private Sub cmdMCF_Click() 
Dim appExcel As Excel.Application 
Dim wbook As Excel.Workbook 
Dim wsheet As Excel.Worksheet 

Set appExcel = New Excel.Application 
appExcel.Visible = True 
Set wbook = appExcel.Workbooks.Open("C:\Path\MyDoc.xlsx") 
Set wsheet = wbook.Worksheets("MCF") 

With wsheet 
    .Cells(10, 1).Value = txtCustomerName 
    .Cells(10, 2).Value = txtCustomerNumber 
    .Cells(10, 3).Value = txtAddress + " " + txtCity + " " + txtState + " " + txtzip 

    .Cells(12, 1).Value = txtPhone 
    .Cells(12, 2).Value = txtEmail 
    .Cells(12, 3).Value = txtmeasurenumber 

    .Cells(14, 1).Value = txtStore 
    .Cells(14, 2).Value = txtAssignedIP 

End With 

End Sub 

это хорошо, если это просто сидит ИНТ он кода. Но название момент я кнопка cmdMCF, ошибки запуска.

дело в том, этот подпункт, «Копировать и прошлое», используется прямо сейчас на dbFrontEndv3. С небольшими трудностями у меня была такая же ошибка, как только lementing dbFrontEndv3. Но тогда это сработало хорошо.

Что в коде выше может вызвать эти случайные сбои?

+1

http://stackoverflow.com/q/3266542/3198973 – RubberDuck

+0

Будет ли компиляция сохранять один из сломанных передних концов или мне нужно начать с рабочего db? – msiudut

+0

Это на самом деле * de * - компиляция, но это абсолютно стоит. Я регулярно декомпилирую/перекомпилирую свои проекты во время разработки, когда это произойдет. – RubberDuck

ответ

1

У меня были аналогичные проблемы, когда форма была создана в одной версии доступа, а затем редактировалась в другой версии. Хотя файлы должны быть совместимы между версиями, есть некоторые отличия.

Попробуйте воссоздать форму с нуля в версии, которую вы используете.

Смежные вопросы