当前位置:编程学习 > VB >>

请问复杂的表单EXCEL应该怎么处理比较好?

情况 是这样的
现在有个客户,原来有份表格, 是用EXCEL做的, 格式 比较复杂,打印出来,然后手工填的.
现在要求 用电脑填单,并分类保存.
怎么分类保存倒是好办,但怎么实现如下的效果?
1.直接显示 出这个EXCEL表格来(这个我实现了,用OLE控件就可以)
2.双击 这个EXCEL表的某个格子,就弹个提示框出来,让他填,例如 双击了第2行 第3列,就弹个框出来让他填.而不是直接修改EXCEL表. 用OLE控件的话双击就直接变成 编辑EXCEL文件了
3.编辑好后,怎么样按某个键,把这个文件另存为 "ABC.XLS" Excel --------------------编程问答-------------------- 截获点击的时候把焦点转移至输入框就行了 --------------------编程问答-------------------- 请问具体怎么操作? --------------------编程问答-------------------- 为什么不用VBA进行二次开发?
非要用OLE. --------------------编程问答--------------------
引用 2 楼 wzqx 的回复:
请问具体怎么操作?

当OLE获得Click或者MouseDown时Text1.SetFocus --------------------编程问答-------------------- 数据输入和打印输出是两个功能。

做一个输入画面,与手工填单的项目对应;输入的数据可以存放在自己的数据库中。
打印是直接操作 Excel 打开原始的表格,给对应单元格赋值,另存为 ABC.XLS;用 ABC.XLS 打印可以保证和原格式一致。
--------------------编程问答-------------------- ole click时,怎么取得按得是那一行,那一列啊. 就差这个了 --------------------编程问答-------------------- 还有个问题 就是 用OLE的话,双击那个控件就变成直接操作EXCEL表了. 我在OLE1_DBLCLICK 里写的程序根本 没运行 --------------------编程问答--------------------
引用 6 楼 wzqx 的回复:
ole click时,怎么取得按得是那一行,那一列啊. 就差这个了

直接取值不行么?
A = DataField("字段名1")
B = DataField("字段名2")
C = DataField("字段名3")
不需要管行列

引用 7 楼 wzqx 的回复:
还有个问题 就是 用OLE的话,双击那个控件就变成直接操作EXCEL表了. 我在OLE1_DBLCLICK 里写的程序根本 没运行

单击处理之后就跳转了
双击肯定不能触发
只能换地方了 --------------------编程问答-------------------- 要行,列啊. 
取得 点击了,那一行,列, 弹个输入框出来请客户填,还得写回去啊 按行列写回去啊 --------------------编程问答-------------------- 点击表格的时候数据指针就指向某个行了
处理的话就是当前行了
列就用字段名称来决定

读出时:A = DataField("字段名1")
写入时:DataField("字段名1") = A --------------------编程问答-------------------- 简单的例句:

Ole_Click()
  Text1.Text = DataField("字段名1")
  Text2.Text = DataField("字段名3")
  ……
End Sub

Cmd_Click()
  DataField("字段名1") = Text1.Text
  DataField("字段名3") = Text2.Text
  ……
End Sub --------------------编程问答-------------------- 也许是我太笨了.完全不行啊.请问可以建一个EXCEL文件,然后用OLE实现一下吗?谢谢了
OLE1.DataField("A")会报错, OLE1.DataField("1") 也不行啊 --------------------编程问答--------------------
引用 12 楼 wzqx 的回复:
也不行啊

不对
是我弄错了
Ole好像不支持Click事件
如果DblClick就点进去了

要不换成DataGrid控件吧 --------------------编程问答-------------------- 自己重新做一个填表窗体,填写的结果写回 Excle 就好了。 --------------------编程问答-------------------- VB+Ole+Excel,然后在Excel里面使用VBA。

VBA中的Row()、Column()可以判断行好、列号。 --------------------编程问答-------------------- 请热心人,帮忙看看下面的求助吧!
请高手帮忙修正一个注册表模块!已经做成工程文件,有详细的实例的!
http://bbs.csdn.net/topics/390428796
补充:VB ,  基础类
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,