在表单里使用excel工作表

原创 2011年01月21日 11:43:00

Sub Click(Source As Button)

         Dim workspace As New NotesUIWorkspace

         Dim uidoc As NotesUIDocument

         Dim s As New NotesSession    

         Dim cdb As NotesDatabase

         Dim view As NotesView

         Dim doc As NotesDocument

         Dim MailInDbdoc As NotesDocument

         Dim Groupdoc As NotesDocument

         Dim people As NotesName     

         Dim handle As Variant

        

         Set cdb = s.CurrentDatabase  

         Set uidoc = workspace.CurrentDocument

//获取内嵌对象

         Set handle = uidoc.GetObject( "OLEREG" )

//获取工作表

         Set AppSheet=handle.sheets(1)

//从工作表中取值

         UserName = Replace(Trim(AppSheet.cells(1,1).value)," ","")

         i=1

//如果第一列(姓名)不为空值,即还有需要处理的人员

         Do While UserName<>""        

                   //从域里面取字符串     

                   O = uidoc.FieldGetText("O")

                   OU1 = Replace(Trim(uidoc.FieldGetText("OU1"))," ","")

                   //从工作表-单元格中取出数值

                   OU2 = Replace(Trim(AppSheet.cells(i,2).value)," ","")

                   RegServer = uidoc.FieldGetText("RegServer")

                   //生成用户名

                   Set people = s.CreateName(UserName+"/"+OU2+"/"+OU1+"/"+O)

                   If Not Check_People_Record(s,cdb.Server,people.Canonical) Then

                            If Not Check_Is_Double(Trim(UserName+"/"+OU2+"/"+OU1+"/"+O),cdb,"RegUserList_Back") Then

                                     Set doc = New NotesDocument(cdb)

                                     doc.O = O

                                     doc.OU1 = OU1

                                     doc.Depart = OU2

                                     doc.UserName = UserName

                                     doc.RegServer = RegServer

                                     doc.processed = "0"

                                     //指定文档所使用的表单

                                     doc.form = "frmRegUser"

                                     Call doc.ComputeWithForm(False,False)

                                     Call doc.Save(True,True)

                            End If

                   End If

                  

                   If Not Check_MailInDatabases_Record(s,cdb.Server,Trim(OU1+OU2+"邮箱")) Then

                            If Not Check_Is_Double(Trim(OU1+OU2+"邮箱"),cdb,"RegMailInDbList_Back") Then

                                     Set doc = New NotesDocument(cdb)

                                     doc.O = O

                                     doc.OU1 = OU1

                                     doc.Depart = OU2

                                     doc.RegServer = RegServer

                                     doc.processed = "0"

                                     doc.form = "frmRegMailInDb"

                                     Call doc.ComputeWithForm(False,False)

                                     Call doc.Save(True,True)

                            End If

                   End If

                  

                   If Not Check_Group_Record(s,cdb.Server,Trim(OU1+OU2+"全体人员")) Then

                            If Not Check_Is_Double(Trim(OU1+OU2+"全体人员"),cdb,"RegGroupList_Back") Then

                                     Set doc = New NotesDocument(cdb)

                                     doc.O = O

                                     doc.OU1 = OU1

                                     doc.Depart = OU2

                                     doc.RegServer = RegServer

                                     doc.processed = "0"

                                     doc.form = "frmRegGroup"

                                     Call doc.ComputeWithForm(False,False)

                                     Call doc.Save(True,True)

                            End If

                   End If

                   i=i+1

                   UserName = Trim(AppSheet.cells(i,1).value)

         Loop

         Msgbox "注册列表已产生!"

End Sub

Excel 2010 受保护的工作表中使用“组合”功能(亲自实践)

组合功能在Excel中经常使用,可以很方便地将一组数据展开或者折叠 当我们需要将其所在工作表进行保护时,发现之前设定的组合无法使用了   此时,就需要我们在VBA中设定相关语句: PS:该方法转自Ex...
  • bigheadsheep
  • bigheadsheep
  • 2014年02月07日 15:00
  • 6188

excel将一个工作表根据条件拆分成多个工作表图文教程

本例介绍在excel中如何将一个工作表根据条件拆分成多个工作表。 注意:很多朋友反映sheets(i).delete这句代码出错,要注意下面第一个步骤,要拆分的数据工作表名称为“数据源”,而不是...
  • lcczzu
  • lcczzu
  • 2015年08月18日 16:53
  • 6926

在VBA中引用excel的函数

在 Visual Basic 语句中可以使用大多数 Microsoft Excel 工作表函数。若要查看可以使用的工作表函数列表,请参阅 Visual Basic 可使用的工作表函数列表。 注意 ...
  • Jofee
  • Jofee
  • 2006年06月15日 14:03
  • 4926

用VBA对一个EXCEL中的多个工作表排序

要求:对一个EXCEL中的多张工作表进行相同的排序 第一次进行VBA代码实际操作,先录制的宏,然后再对代码进行微调。 虽然还有所欠缺,不过是第一次,记在这里做个小纪念,继续努力!...
  • holly666
  • holly666
  • 2016年12月21日 17:02
  • 1521

[AHK]遍历Excel有哪些Sheet

oExcel := ComObjActive("Excel.Application") for Item in oExcel.workbooks { data .= "Name:`t"o...
  • liuyukuan
  • liuyukuan
  • 2016年10月21日 19:56
  • 699

通过VBA宏合并Excel工作表

工作中经常会用到的把几个Excel文件合并到一个,或者是把一个Excel文件里的所有Sheet合并到一个Sheet来进行统计。下面分别提供用vba宏来解决这两个问题的方法。1、合并Excel文件打开一...
  • nsj820
  • nsj820
  • 2011年04月16日 10:37
  • 32491

Excel工作表特殊类型之一:对话框用法

作者:iamlaosong 曾经看到这么一个问题: 有一个VBA应用的例子中有这么一句代码:     ThisWorkbook.DialogSheets("Start").Show 我找了整个工程都没...
  • iamlaosong
  • iamlaosong
  • 2015年02月28日 15:27
  • 4804

excel 跨表格数据汇总

背景: 几十个sheet的页面数据要汇总到一个sheet,每个sheet的结构相同。 比如:a1,c3,d6存储具体数据,每个sheet都是交易日命名,比如20151113之类。 方法:...
  • fonjames
  • fonjames
  • 2016年01月20日 00:40
  • 855

C#实现Excel的导入与导出

使用C#实现Excel数据的导入与导出。代码如下: public class ExcelIO     {         private int _ReturnStatus;         ...
  • lanse_my
  • lanse_my
  • 2014年03月11日 15:59
  • 747

在Excel中创建默认的工作簿工作表模板

在Excel中创建默认的工作簿工作表模板sheet.xlt和book.xlt   在Excel 2003中可以保存的默认设置相当少,只有“工具→选项”中的小部分设置可以被保存下来,对...
  • DuoPanCN
  • DuoPanCN
  • 2015年01月30日 00:23
  • 1359
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在表单里使用excel工作表
举报原因:
原因补充:

(最多只允许输入30个字)