Excel的RefEdit控件可以在VBA之外使用
作为VBA的一部分的RefEdit控件是一个小错误,但是当你希望人们指定一个或多个单元格范围(即Excel.Range
对象)时,它是很好的select。
主要的问题是你只能在VBA UserForm上使用RefEdit控件( 微软声明这一点 ,我的testing也证实了这一点)。 我使用Delphi制作Excel加载项,并且正在寻找RefEdit控件的替代方法 。
Excel.Application.InputBox Type:=8
是select单元格范围的一种替代方法,但是当您需要人们在单个表单上select多个单元格范围时,它不是非常用户友好。 我现在最好的select是从我的Delphi插件中调用一个VBA表单,但这并不理想。
所以理想情况下,我可以使用RefEdit的替代scheme – 我可以在Delphi上使用。 如果有的话,不容易find(我一直在search很难,而且我还没有find一个适用于Delphi,VB6或.NET的RefEdit替代品)。
如果没有一个替代品,我可能会尝试把自己的替代品拼凑在一起,但是我怀疑如果不是不可能做出和RefEdit一样的作品,那将是困难的。 RefEdit可以让你“select”单元格而不用实际select单元格:它使用你select的单元格周围的ant,而不是突出显示它们并改变Excel.Application.Selection
。 我不知道通过VBA,Delphi或其他方式来操作Excel对象模型的方法。
任何提示,技巧,黑客,或者,如果我真的很幸运,指引下载RefEditreplace将是最受欢迎的。
在寻找解决RefEdit错误的解决方法时,我遇到了这个RefEdit控件replace 。 第三方控制当时不是我的select,但它可能会帮助你。
不知道从你的问题:你有没有试图导入RefEdit到delphi?
您可以从RefEdit.dll中将其作为ActiveX控件导入,然后以任何Delphiforms拖放TRefEdit控件。 和你的VBA应用程序中的RefEdit一样。
或者是你尝试过,它不工作,因为RefEdit需要一些VBA woodoo …?