戻る  □一般操作のサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 最新記事及び返信フォームをトピックトップへ ]
このトピック参照回数 :
記号のコピペ

    [194955] 記号のコピペ-

    ■親トピック/記事引用/メール受信=OFF■

    □投稿者/ まー -(2022/06/02(18:55))
    □U R L/
      お世話になります。
      
      エクセルのシートに〇(記号)を付けていく作業が大変なので考えてみました。
      
      
       ActiveSheet.Shapes.Range(Array("Oval 2")).Select
          Selection.Copy
          Range("AJ10").Select
          ActiveSheet.Paste
      
      上記の公式だとAJ10に限定されますが、色々なセルを順番に選んでは〇、選んでは〇というふうにしたいのですが、どうすればよいでしょうか?


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他



      ++++++++++++++++++++
      OS      ⇒OTHER
      Version⇒OTHER
      ++++++++++++++++++++




    [194956] Re[1]: 記号のコピペ-

    記事引用/メール受信=OFF■

    □投稿者/ OK -(2022/06/02(19:41))
    □U R L/
      Duplicate
      でシェイプの複製ができます。
      
      で複製したシェイプの一を調整してやります。
      
      Sub test()
       Call ovaldup(ActiveSheet, ActiveCell)
      End Sub
      
      Function ovaldup(ByVal ws As Worksheet, rng As Range)
       Dim moto As Object
       Dim dup As Object
        Set moto = ws.Shapes("Oval 2")
        Set dup = moto.Duplicate
        With dup
         .Left = rng.Left + rng.Width / 2 - dup.Width / 2 'シェイプの左端=セルの左端+セル幅の半分-シェイプの幅の半分
         .Top = rng.Top + rng.Height / 2 - dup.Height / 2 'シェイプの上端=セルの上端+セル高の半分-シェイプの高さの半分
         
        End With
        Set moto = Nothing
        Set dup = Nothing
      End Function


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [194957] Re[2]: 記号のコピペ-

    記事引用/メール受信=OFF■

    □投稿者/ OK -(2022/06/02(19:42))
    □U R L/

      >で複製したシェイプの一を調整してやります。

      ↓の間違いでした。

      で複製したシェイプの位置を調整してやります。




    [194958] Re[3]: 記号のコピペ-

    記事引用/メール受信=OFF■

    □投稿者/ OK -(2022/06/02(19:44))
    □U R L/

      ↑はシェイプを複製してますが、Ovalを一から作ってやっても
      いいと思います。マクロでシェイプ作成ができます。




    [194959] Re[3]: 記号のコピペ-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ まー -(2022/06/02(19:45))
    □U R L/

      ありがとうございました。




    [194960] Re[4]: 記号のコピペ-

    記事引用/メール受信=OFF■

    □投稿者/ OK -(2022/06/02(19:49))
    □U R L/
      全ての選択セル(セルひとつづつ)に◯を付けていく
      サンプルです。
      
      Sub test3()
       Dim sel As Range
       Dim c As Range
        If TypeName(Selection) <> "Range" Then Exit Sub
        Set sel = Selection
        For Each c In sel
         Call ovaldup(ActiveSheet, c)
        Next c
        Set sel = Nothing
      End Sub


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他



このトピック内容の全ページ数 / [0]

このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 


- Child Forum -
Edit:ゆう-G