Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Forms 在VBA中更改后加载空白的表单详细信息部分_Forms_Ms Access_Vba_Ms Access 2013 - Fatal编程技术网

Forms 在VBA中更改后加载空白的表单详细信息部分

Forms 在VBA中更改后加载空白的表单详细信息部分,forms,ms-access,vba,ms-access-2013,Forms,Ms Access,Vba,Ms Access 2013,我最近在表单的VBA中做了一些更改,现在表单视图中表单的详细信息部分加载为空白。我可以看到标题,底部列出了记录的数量,但是详细信息部分现在加载为空。我的假设是VBA代码导致了这种情况,因为我没有更改任何表单设置 在向窗体的某个区域添加一些新函数时,我做了一些故障排除。一切都很顺利。然后,我复制了我使用的代码,并对其进行了修改,以便对表单的不同部分执行相同的操作。对于上下文,此表单只是一个审阅页面,它将多个表中的数据拉入摘要页面。这以前不是问题,我用备份确认所有设置都是相同的,备份没有此问题。备份

我最近在表单的VBA中做了一些更改,现在表单视图中表单的详细信息部分加载为空白。我可以看到标题,底部列出了记录的数量,但是详细信息部分现在加载为空。我的假设是VBA代码导致了这种情况,因为我没有更改任何表单设置

在向窗体的某个区域添加一些新函数时,我做了一些故障排除。一切都很顺利。然后,我复制了我使用的代码,并对其进行了修改,以便对表单的不同部分执行相同的操作。对于上下文,此表单只是一个审阅页面,它将多个表中的数据拉入摘要页面。这以前不是问题,我用备份确认所有设置都是相同的,备份没有此问题。备份和当前表单的唯一区别是添加了控件和命令按钮,以及一些VBA。但是备份加载正确,而我的新文件却没有。我已经复制了下面的VBA,以防由于问题而出现一些突出的问题。我确实在FormLoad和Current部分中添加了VBA,但这只是已经存在的代码的重复。我复制了参考软件和软件的代码,即硬件和硬件。我不知道为什么这会引起问题。所有的代码引用软件都经过了测试,工作令人满意,所以我将其全部复制到了硬件上。问题就在这里的某个地方。我已经复制了整个表单的所有VBA。很抱歉这么长,但我认为这可能是有用的。您可能会注意到草率的工作或低效的代码使用,因为我对这一点还不熟悉,但希望它有意义。如果我能澄清任何事情或解释我试图用一个特定函数实现什么,请不要犹豫

我非常感谢任何帮助

Option Compare Database

Private Sub cmdAddSWRev_Click()

Me.lstSWRevAdd.Visible = True
Me.lstSWRevDateAdd.Visible = True
Me.lstSWRevNotesAdd.Visible = True
Me.lblSwRevAdd.Visible = True
Me.lblSWRevDateAdd.Visible = True
Me.lblSWRevNotesAdd.Visible = True

Me.lstSWRev.Visible = False
Me.lstSWRevDate.Visible = False
Me.lstSWRevNotes.Visible = False
Me.lblSWRev.Visible = False
Me.lblSWRevDate.Visible = False
Me.lblSWRevNotes.Visible = False

Me.cmdSaveSWRev.Visible = True

End Sub


Private Sub cmdHWRevAdd_Click()

Me.lstHWRevAdd.Visible = True
Me.lstHWRevDateAdd.Visible = True
Me.lstHWRevNotesAdd.Visible = True
Me.lblHWRevAdd.Visible = True
Me.lblHWRevDateAdd.Visible = True
Me.lblHWRevNotesAdd.Visible = True

Me.lstHWRev.Visible = False
Me.lstHWRevDate.Visible = False
Me.lstHWRevNotes.Visible = False
Me.lblHWRev.Visible = False
Me.lblHWRevDate.Visible = False
Me.lblHWRevNotes.Visible = False

Me.cmdSaveHWRev.Visible = True

End Sub

Private Sub cmdSaveSWRev_Click()

'Create an entry in Software Revisions

   Dim SerialNumberDatabase As DAO.Database
   Dim tblSoftwareRevisions As DAO.Recordset


   Set SerialNumberDatabase = CurrentDb
   Set tblSoftwareRevisions = SerialNumberDatabase.OpenRecordset("tblSoftwareRevisions")

   tblSoftwareRevisions.AddNew
   tblSoftwareRevisions("SoftwareRevision").Value = Me.lstSWRevAdd
   tblSoftwareRevisions("Assembly").Value = Me.PartNumber_tblUnits
   tblSoftwareRevisions("SWRevDate").Value = Me.lstSWRevDateAdd
   tblSoftwareRevisions("Notes").Value = Me.lstSWRevNotesAdd
   tblSoftwareRevisions.Update
   tblSoftwareRevisions.Close

'Add the new Software Revision ID to the existing unit in tblUnits by editing the Null SoftwareID field

 Dim tblUnits As DAO.Recordset
 Set tblUnits = SerialNumberDatabase.OpenRecordset("tblUnits")

 tblUnits.MoveFirst
   Do Until tblUnits.EOF
      If tblUnits!SerialNumber = Me.lstSerialNumber And tblUnits!PartNumber = Me.lstPartNumber Then
         tblUnits.Edit
         tblUnits!SoftwareID = DMax("SWRevID", "tblSoftwareRevisions")
         tblUnits.Update
      End If
      tblUnits.MoveNext
   Loop

   MsgBox ("The Software Revision has been added for this unit")


End Sub
Private Sub cmdSaveHWRev_Click()

'Create an entry in Software Revisions

   Dim SerialNumberDatabase As DAO.Database
   Dim tblHardwareRevisions As DAO.Recordset


   Set SerialNumberDatabase = CurrentDb
   Set tblHardwareRevisions =     SerialNumberDatabase.OpenRecordset("tblHardwareRevisions")

   tblHardwareRevisions.AddNew
   tblHardwareRevisions("HardwareRevision").Value = Me.lstHWRevAdd
   tblHardwareRevisions("Assembly").Value = Me.PartNumber_tblUnits
   tblHardwareRevisions("HWRevDate").Value = Me.lstHWRevDateAdd
   tblHardwareRevisions("Notes").Value = Me.lstHWRevNotesAdd
   tblHardwareRevisions.Update
   tblHardwareRevisions.Close

'Add the new Software Revision ID to the existing unit in tblUnits by editing the Null SoftwareID field

 Dim tblUnits As DAO.Recordset
 Set tblUnits = SerialNumberDatabase.OpenRecordset("tblUnits")

 tblUnits.MoveFirst
   Do Until tblUnits.EOF
      If tblUnits!SerialNumber = Me.lstSerialNumber And tblUnits!PartNumber = Me.lstPartNumber Then
         tblUnits.Edit
         tblUnits!HardwareID = DMax("HWRevID", "tblHardwareRevisions")
         tblUnits.Update
      End If
      tblUnits.MoveNext
   Loop
        tblUnits.Close
   MsgBox ("The Hardware Revision has been added for this unit")


End Sub
Private Sub cmdSearch_Click()

DoCmd.ShowAllRecords
DoCmd.RunCommand acCmdFind


End Sub

Private Sub Form_Current()

Me.lstUnitBuiltDate.Requery

If Me.txtSerialCount.Value > 1 Then
Me.tblReportedIssues_subform_Label.Visible = True
Me.tblReportedIssues_subform.Visible = True
Else
Me.tblReportedIssues_subform_Label.Visible = False
Me.tblReportedIssues_subform.Visible = False
End If

If Me.txtRMACount.Value > 1 Then
Me.tblReportedIssues_subform1_Label.Visible = True
Me.tblReportedIssues_subform1.Visible = True
Else
Me.tblReportedIssues_subform1_Label.Visible = False
Me.tblReportedIssues_subform1.Visible = False
End If

If Me.lstSerialNumber.Value < 1 Then
Me.txtSerialNote.Visible = True
Else
Me.txtSerialNote.Visible = False
End If

Me.lstSWRevAdd.Visible = False
Me.lstSWRevDateAdd.Visible = False
Me.lstSWRevNotesAdd.Visible = False
Me.lblSwRevAdd.Visible = False
Me.lblSWRevDateAdd.Visible = False
Me.lblSWRevNotesAdd.Visible = False
Me.cmdSaveSWRev.Visible = False

Me.lstSWRev.Visible = True
Me.lstSWRevDate.Visible = True
Me.lstSWRevNotes.Visible = True
Me.lblSWRev.Visible = True
Me.lblSWRevDate.Visible = True
Me.lblSWRevNotes.Visible = True

Me.lstHWRevAdd.Visible = False
Me.lstHWRevDateAdd.Visible = False
Me.lstHWRevNotesAdd.Visible = False
Me.lblHWRevAdd.Visible = False
Me.lblHWRevDateAdd.Visible = False
Me.lblHWRevNotesAdd.Visible = False
Me.cmdSaveHWRev.Visible = False

Me.lstHWRev.Visible = True
Me.lstHWRevDate.Visible = True
Me.lstHWRevNotes.Visible = True
Me.lblHWRev.Visible = True
Me.lblHWRevDate.Visible = True
Me.lblHWRevNotes.Visible = True

End Sub

Private Sub Form_Load()

Me.lstSWRevAdd.Visible = False
Me.lstSWRevDateAdd.Visible = False
Me.lstSWRevNotesAdd.Visible = False
Me.lblSwRevAdd.Visible = False
Me.lblSWRevDateAdd.Visible = False
Me.lblSWRevNotesAdd.Visible = False
Me.cmdSaveSWRev.Visible = False

Me.lstSWRev.Visible = True
Me.lstSWRevDate.Visible = True
Me.lstSWRevNotes.Visible = True
Me.lblSWRev.Visible = True
Me.lblSWRevDate.Visible = True
Me.lblSWRevNotes.Visible = True

Me.lstHWRevAdd.Visible = False
Me.lstHWRevDateAdd.Visible = False
Me.lstHWRevNotesAdd.Visible = False
Me.lblHWRevAdd.Visible = False
Me.lblHWRevDateAdd.Visible = False
Me.lblHWRevNotesAdd.Visible = False
Me.cmdSaveHWRev.Visible = False

Me.lstHWRev.Visible = True
Me.lstHWRevDate.Visible = True
Me.lstHWRevNotes.Visible = True
Me.lblHWRev.Visible = True
Me.lblHWRevDate.Visible = True
Me.lblHWRevNotes.Visible = True

Me.lstUnitBuiltDate.Requery

End Sub

Private Sub lstRMA_Click()

MsgBox "This cannot be Edited or Altered", vbCritical, "Field Locked"

End Sub

Private Sub tblReportedIssues_subform_Enter()

MsgBox "This cannot be Edited or Altered. If you would like to review a listed RMA, please use the Search or Navigation buttons to locate it.", vbCritical, "Field Locked"

End Sub
如果重要的话,表单有一个SELECT tblReportedIssues.*的记录源,tblUnits.Notes,tblUnits.SerialNumber作为SerialNumber\u tblUnits,tblUnits.PartNumber作为PartNumber\u tblUnits内部联接tblRMA内部联接tblreportedisues ON tblRMA.RMANumber=tblreportedisues.RMA ON tblUnits.PartNumber=tblreportedisues.PartNumber和tblUnits.SerialNumber=tblreportedisues.SerialNumber

设置如下: 记录集:Dynaset 获取默认值:是 过滤器:空白 带载过滤器:否 订货人:空白 装船订单:无 等待后处理:否 数据输入:否 允许添加:否 允许删除:否 允许编辑:是 允许筛选器:是 记录锁:无锁


这些设置和记录源代码在我的备份文件中起作用,因为它们允许正确加载所有内容

我是个白痴。经过大量调查,似乎我在设计模式下意外选择了详图栏,并在试图隐藏其他控件时将其可见性更改为“否”