kakashi-blog・カカシブログ・

Python備忘録を書きドローンやバイクなど好きな事で生きて行こうとしているブログ

Excel PC プログラミング

Excel VBAを使用して、セルの中の図形をコピーして別のセルにペースト

投稿日:

 

実はVBAは使用せずに、関数だけでコピペをしようと思いましたが、なかなか上手くいきませんでした。

なのであきらめてVBAで作ります。

 

目的

 

順序がバラバラのセルに番号をふって、別のシートに整列させたい
※フィルター機能は使えないという前提。

 

例題

 

 

A列のセルに入ってる図形をB列のセルに入っている番号順に並べ変えたい。

1〇、2△、3□の順に。

現在のシートは”2”、並べ替えたものをシート”1”に入れたい。

 

 

VBAを書く

 

開発→VisualBasic→挿入→標準モジュール

 

Sub cp()
    Dim i As Long
    Dim R As Long
    
    
    For i = 1 To 3

        Sheets("2").Select
        Cells(i, 1).Select
        Selection.Copy
        R = Cells(i, 2).Value

        If R = 1 Then
            Sheets("1").Select
            Range("A1").Select
            ActiveSheet.Pictures.Paste
            
        ElseIf R = 2 Then
            Sheets("1").Select
            Range("A2").Select
            ActiveSheet.Pictures.Paste
            
        Else: R = 3
            Sheets("1").Select
            Range("A3").Select
            ActiveSheet.Pictures.Paste
            
        End If
        
        
    Next i
    
End Sub

 

 ちなみに普段pythonを書いているので、インデントは癖です。

 適当にボタンを作って実行してみます

 

 

実行結果

 

 

一応並びました。

ペーストされる方のセルの大きさは、合わせておかないと重なってしまって見辛くなってしまいます。

とりあえず実用出来そうなので、目的は達成されました。

もっといいやり方があればおしえてください。

-Excel, PC, プログラミング
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。

関連記事

pythonのtkinterを使って、あまりのある割り算アプリを作ってみた

小3の娘に、あまりのある割り算の問題を出してほしいとたのまれたので、Windowsで動くアプリを作ってみました。 退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミ …

Amazonはスクレイピングが禁止。seleniumでデータ収集をしてみた

pythonでコードを書いて、AmazonのサイトからASINコードと金額のデータを、普通にスクレイピングしてみたけど出来なかった。(バグだと思って何時間も無駄にした) どうやらAmazonのサイトは …

カプレカ数をpythonで求める

カプレカ数とは まず6174を例にとってみます。 ’6’、’1’、’7’、’4’と桁を関係なく数字をバラバラにします。 その数字の並び替えを[最大]と[最小]になるように並び替えます。 ・最大 764 …

Tkinterのメッセージボックス、謎ウインドウが消えない

pythonでTkinterを使用し、メッセージボックスを使おうと思ったが、謎ウインドウが出てきて処理が止まってしまう。    ↓のやつですね   調べてみると、「ルートウィンドウが無いと勝手に生成さ …

Windowsキーボード入力、便利なショートカット(仮想デスクトップなど)

仮想デスクトップのショートカットを最近知りましたこんなに便利な機能があるのに、職場で使っている人を見たことなかったそもそも人のPC操作ってあまり見る機会ないですね        ①仮想デスクトップの作 …