所以我目前正在学习SQL Server,但现在我正在学习时正在做一个标准的办公室管理工作。 我从来没有真正做过宏以及对VB的一点知识,但决定设计一个宏来工作,让我的团队更容易。 宏只是非常简单地允许用户输入数据,统计数据等,并给出百分比或平均统计数据,从而导致用户知道统计数据是在那一天,一周,一个月等被点击的。 它运行良好,但我想添加一个“SUBMIT”按钮,当用户点击它时,它会将他们在指定单元格中输入的数据发送给我自己。我不知道该怎么做,如果需要的话,我现在无法访问像SQL,Visual Studio等系统那样的基本管理工作。
是否需要以CSV格式提交?或者是否可以从用户的表单直接提交到我设计的另一个宏,为整个团队提供结果?如上所述,我对这个想法完全不熟悉。
干杯伙伴。
答案 0 :(得分:2)
很好,根据你可能需要的一个非常简单的方法,你需要做的第一件事是要知道他们将要输入信息的细胞(照顾范围),让&假设在这个例子中,只有在团队工作表的第一个单元格中输入了一个数据。因此,创建一个名为' button1'的按钮。或者根据您的意愿和点击事件使用此代码:
Private Sub button1_click()
On Error Resume Next
yoursheet.unprotect password:="yourpassword"
Teamsheet.Cells(row,column) = Yoursheet.Cells(destinyrow,destinycolumn)
On Error Resume Next
yoursheet.PROTECT password:="yourpassword"
End Sub
那会将值从一张纸复制到另一张,现在,如果您通过密码锁定了纸张,则必须先将其解锁,然后再将其锁定,以便代码如下:
Teamsheet.Range("A1:D3").Value = yoursheet.Range("A1:D3").Value
我澄清说这是一个非常简单的方法,因此,如果你使用特定的单元格,你可以逐个复制,这样做(所以你可以把你的管理表作为一个计算的儿子),但当你和#39;重新复制范围应该是这样的:
Private Sub button1_click()
Var_data = Teamsheet.Cells(row,column)
Application.ScreenUpdating = False
Workbooks.Open Filename:=ThisWorkbook.Path & "\admin_workbook.xls"
ThisWorkbook.Activate
Admin_sheet.Cells(destinyrow,destinycolumn) = var_data
Workbooks("admin_workbook.xls").Close SaveChanges:=True
Application.ScreenUpdating = True
End Sub
此外,请始终考虑他们如何输入您需要的数据。
更新:
我们假设您有一个团队工作簿,而您的是admin_workbook,它的概念类似。此代码将执行您所需的操作,但两个工作簿应位于同一文件夹或路径中:
{{1}}
首先,您在var上捕获数据,然后打开管理簿,将数据放在所需的单元格上并关闭该工作簿以保存更改(您决定是保留此行还是保持工作簿打开并手动保存)。此外,Application.screenupdating它是一条线,可以帮助您的屏幕在工作簿之间切换时不会轻弹。
希望它有助于朋友!