4

VBA の一部として提供される RefEdit コントロールには少しバグがありますが、1 つまたは複数のセル範囲 (つまりExcel.Rangeオブジェクト) を指定する必要がある場合にフォームを配置するのに適しています。

主な問題は、RefEdit コントロールを VBA UserForm でしか使用できないことです ( Microsoft はこれを述べており、私のテストでも確認しています)。Delphiを使用して Excel アドインを作成しており、RefEdit コントロールに代わるものを探しています。

Excel.Application.InputBox Type:=8セルの範囲を選択する別の方法の 1 つですが、1 つのフォームで複数のセルの範囲を選択する必要がある場合は、あまりユーザー フレンドリーではありません。現時点で最良の代替手段は、Delphi アドインから VBA フォームを呼び出すことですが、それは理想とはほど遠いものです。

したがって、理想的には、RefEdit のドロップイン代替品 ( Delphi フォームで使用できるもの) を使用することができます。あるとしても、見つけるのは簡単ではありません (私はかなり一生懸命探しましたが、Delphi、VB6、または .NET のドロップイン RefEdit 代替品を見つけることができませんでした)。

ドロップイン置換に失敗した場合は、独自の代替案を組み合わせてみるかもしれませんが、RefEdit と同様に機能するものを作成することは、不可能ではないにしても難しいと思います. RefEdit を使用すると、セルを実際に選択せずに「選択」できます。選択したセルを強調表示してExcel.Application.Selection. VBA や Delphi などを使って Excel オブジェクト モデルを操作する方法がわかりません。

ヒント、トリック、ハック、または本当に運が良ければ、RefEdit のドロップイン置換へのポインターを大歓迎します。

4

2 に答える 2

1

RefEditのバグの回避策を探しているときに、この RefEdit コントロールの置き換えに出会いました。当時、サードパーティのコントロールは私にとって選択肢ではありませんでしたが、それはあなたを助けるかもしれません.

于 2008-09-19T18:39:37.517 に答える
0

あなたの質問からはわかりません: RefEdit を Delphi にインポートしようとしましたか?

これを RefEdit.dll から ActiveX コントロールとしてインポートし、TRefEdit コントロールを任意の Delphi フォームにドロップできます。VBA アプリとまったく同じ RefEdit を使用できます。

それとも、RefEdit が VBA woodoo を必要とするため、試してみましたが機能しませんか?

于 2008-09-20T07:16:24.407 に答える