我们现在在用java操作excel时用的是jxl,操作单元格的读写都没问题,现在出了个问题,就是客户要求在导出的excel中含有复选框、单选框之类的表单元素(也可能是ActiveX元素),现在要根据数据库的字段数据来操作这些元素,各位大虾们,有好的解决方案吗?谢谢了先!

解决方案 »

  1.   

    先建立模板并写好相关vba代码,然后java向其中填入数据,最后在开启excel时,vba会根据excel中的数据判断表单元素的状态。
    vba只是调用到了java做得数据
    你可以先建立个excel写vba,手动填入数据,模拟一下VBA
    Java代码 复制代码   1. Sub Auto_Open()  
       2.     If Sheet1.Range("a8") = "o" Then  
       3.       MsgBox "sssss"  
       4.       Sheet1.CheckBox1.Value = True  
       5.       Sheet1.CheckBox2.Value = True  
       6.       Sheet1.CheckBox3.Value = False  
       7.     End If  
       8. End Sub  Sub Auto_Open()
        If Sheet1.Range("a8") = "o" Then
          MsgBox "sssss"
          Sheet1.CheckBox1.Value = True
          Sheet1.CheckBox2.Value = True
          Sheet1.CheckBox3.Value = False
        End If
    End Sub
    测了一下,可以实现,但是不知道符不符合你的需求
    不过换个角度,觉得既然vba能够实现,那jxl应该也能实现,查一下jxl的文档吧,不知道有没有相关的API