2008-09-15 5 views
4

VB.Netを使用してExcelを自動化し、Excelワークシートに複数行のテキストを配置しようとしましたが、印刷できないように設定できます。これらの間に、印刷可能なレポートがあります。 テキストボックスオブジェクトを追加し、印刷オブジェクト設定をfalseに設定すると、これを行うことができます。どのようにExcelを自動化するときに特定のセルにテキストボックスオブジェクトを配置しますか?

ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 145.5, 227.25, 304.5, 21#) 

が、位置がポイントである:(あなたが別の方法を持っている場合は、私に指示してください)

テキストボックスを追加するためのコードです。特定のセルに配置する方法が必要であり、セルでサイズを調整する必要があります。どのセルを上に置くかを知っているときに、どこに配置するかをどのように見つけることができますか?

答えて

8

あなたはセル名や位置を持っている場合は、あなたが行うことができます:

With ActiveSheet 
    .Shapes.AddTextbox msoTextOrientationHorizontal, .Cells(3,2).Left, .Cells(3,2).Top, .Cells(3,2).Width, .Cells(3,2).Height 
End With 

これは、セルB3の上にテキストボックスを追加します。 B3のサイズを変更すると、テキストボックスも表示されます。

+0

私は数年前に知っていたでしょう。私にはいくつか大きな頭痛を救ったでしょうか? –

0

&をコピーしてテキストボックスを貼り付けると、Excelは現在選択されているセルの上に新しいテキストボックスを配置します。したがって、VBAコピーの&貼り付けコマンドを使用するだけで、これを簡単に実行できます。これは、テキストボックステンプレートを効果的に作成しているので、非常に似たテキストボックスをたくさん使用する場合に特に便利です。

関連する問題