マクロで*を数字に直す

 

1. エクセルを開いて、「ツール」→「マクロ」→「Visual Basic Editor」を選びます

 

 

2.下のような画面が開いたら「挿入」→「標準モジュール」を選びます

 

 

3.すると、下のような画面が(最初は真っ白で)出ますので

ひとまず下の例に従って書いてみます

 

Sub Macro0( )というのは今回作るマクロの名前です。最後のEnd Subと一組になっています

Dim i As Integeriという整数を使いますよというお知らせ

Dim k As Stringkという文字列(文)を使いますよというお知らせ

最初のk=Range(“A1”).Textで、kに、A1に書いてあるテキスト(文字の並んだもの)をしまいます。

 

For i = 1 To 20

….

                                                                   Next

 

                                                                の一塊で、….の部分をi1から20まで繰り返します

….の部分

M=Mid$(k,i,1)で、k(いまはA1のテキストが入っています)のi番目の文字からM1文字取り出すということをしてます。

このあと、If...Then…End Ifがひとかたまりで、

もし、Mが*という文字であったなら

B1にこのときのiを入れます。つまり、1番目にあれば1、2番目にもあればさらに2、という感じです。

 

ためしに実行してみましょう。

以下のようなデータを作ってみます。** **をA1に入れたものです。

 

「ツール」→「マクロ」→「マクロ」を選びます

現れたマクロという画面のMacro0を選択して実行ボタンをクリックします。

区切り文字は入っていませんが、1245と書かれたのがわかりますでしょうか?

うまくいけばOKです。

文字の間に何らかの文字を入れればよいでしょう

その場合、たとえばスペースを入れるときは

Range(“B1”).Value=Range(“B1”).Value & i & “  

としてみましょう。

 

 


トップページへ戻る

EXCELプログラムへ戻る

 
SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送