« 図形のビジュアル一覧を作成する | トップページ | 改ページの追加・削除・位置取得 »

2020年4月20日 (月)

セル内容をもとにPasteメソッドで文字列の図形を作成する

図形で文字列を作成する場合に
1つ1つ文字を入力していくのは手間です。

ここでは,セルに入力された内容で
複数の文字列を図形で作成していきます。

手動でペーストする場合に
右クリックメニューで
[形式を選択して貼り付け]-[図]の手順で作成される図は
セルの大きさや文字の設定など反映した文字列の図形になります。

Vba20200420a

この方法で作成された図は
セルの元データを変更しても
作成された図は変更されません。

 

Vba20200420b

上の画像のように入力されているシートで
A列の1行から5行までのセル内容の図形を
B列に作成していくコードを作成します。

セル内容をもとに文字列の図形を作成するコード1:

Sub macro20200420a()
'セル内容をもとに文字列の図形を作成する

    Dim i As Integer
   
    For i = 1 To Cells(1, 1).End(xlDown).Row
        Cells(i, 1).Copy
        Cells(i, 2).Select
        ActiveSheet.Pictures.Paste.Select
    Next i
   
End Sub

実行結果:
Vba20200420c

B列に図形が作成されました。
元のセルの大きさや文字内容を変更しても
図形は変更されません。

次に,
データ元のセルの大きさや文字内容を変更すると
図形にも反映されるペーストで図形を作成してきます。

手動では,
右クリックメニューで
[形式を選択して貼り付け]-[リンクされた図]の手順で作成できます。

Vba20200420d

 

セル内容をもとに文字列の図形を作成するコード2:

Sub macro20200420b()
'セル内容をもとにリックされた文字列の図形を作成する

    Dim i As Integer
   
    For i = 1 To Cells(1, 1).End(xlDown).Row
        Cells(i, 1).Copy
        Cells(i, 2).Select
        ActiveSheet.Pictures.Paste(Link:=True).Select
    Next i
   
End Sub

実行結果:
Vba20200420e

B列に図形が作成されました。

この図形は元のセルを変更すると
図形にも変更が反映されます。
試しにA5セルを変更すると
次の画像のように図形も変更されます。

Vba20200420f

 

使用Ver:Excel For Office365

|

« 図形のビジュアル一覧を作成する | トップページ | 改ページの追加・削除・位置取得 »

コメント

この記事へのコメントは終了しました。