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 …?