能不能用VBA做一个放在桌面的小程序,双击后在对话框里输入数据,然后是自动保存在EXCEL的表格中

如题所述

可以,但是很复杂,我用excel 2003做过一个完全不显示excel表格的东东,只显示我做的界面,在界面上进行操作和得出结果或将结果导出到另一张表格,换句话说就是相当于把excel当作一个后台运行的数据库使用,我估计LZ是不想让人看到表中的其他数据吧追问

是的,请问怎么弄的

追答

这个只言片语是说不清楚的,如果你熟悉vba,那就加入api就应该达到那个效果了

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-08-13
为什么要用VBA做个程序呢,直接在桌面放一个EXCEL表格文件,双击后打开,输入数据后让程序帮你分类,这不更好?(录入窗口)追问

我也是在帮人弄,自己正好是学习一下,所以想尝试一下,复杂点没关系

追答

我没有VBA,只能用EXCEL做。我也是帮人搞个一个工资发放表和考勤表,你果你需要,我可以帮你用EXCEL做个模板。

追问

最主要是我想学,能不能告诉你怎么做的方法,如果不行,发个模板让我先学习一下

追答

很容易的,比如在录入窗口中输入姓名,学号,各门成绩后点击“导入”按钮,则在另一个文件中将增加一项新的记录或新建一个文件也可。

追问

能否详细一点

追答

Sub abcde()
a = InputBox("请输入考勤月份:", "请输入考勤月份:")
d = a & "月份"
fin = 0
Dim ex As Worksheet
For Each ex In Worksheets
If ex.Name = d Then
fin = 1
End If
Next
If fin = 0 Then
MsgBox "输入错误,该月考勤表不存在!"
Exit Sub
End If
b = InputBox("请输入考勤日期:", "请输入考勤日期:")
b = val(b)
f = Day(DateSerial(2011, 4 + 1, 0))
Dim yn As Double
yn = 0
If 0 "" Then
va = 1
Exit For
End If
Next

If va = 1 Then
aa = MsgBox("该日期巳考勤,你确认要进行修改吗", 4)
End If
If aa = 7 Then
Exit Sub
End If
If aa = 6 Then
MsgBox "确认修改!"
End If
Sheets(d).Select
For k = 4 To rs
Sheets(d).Cells(k, 1).Value = k - 3
Next
Dim mm As String
Dim mn As String
For h = 4 To rs
mm = Sheets(d).Cells(h, 2).Value
If h rs Then
MsgBox "请正确选择考勤对象!"
Exit Sub
End If
cc = ce.Column
If cc 2 Then
MsgBox "请正确选择考勤对象!"
Exit Sub
End If
v = Cells(menrow, b + 2).Value
Cells(menrow, b + 2).Value = mv + v
Next
zz = Day(DateSerial(Year(Date), Month(Date) + 1, 0))
For e = 4 To rs
g = 0
For r = 3 To zz + 2
g = g + Cells(e, r).Value
Next
Cells(e, zz + 3).Value = g
Next
以下己超过字数限制,略去

追问

非常感谢你耐心的回答,看了你的模板,不是我想象中的,再次感谢你

追答

原理差不多,稍作修改即可。

本回答被提问者采纳
第2个回答  2011-08-13
可以啊追问

能不能用VBA举个例子?

相似回答