• ベストアンサー

エクセル2000マクロ記述について

B列の2行目から下記のようなデータがあります。(例4件の18桁) AD120000110000000P AD120000110000000P AD120000110000000P AD120000110000000P 頭から7桁目と8桁目の間、12桁目と13桁目の間に半角のスペースを空けたいのですが マクロでの記述はどうすればよいか教えてください。 データの件数はその都度変わります。

noname#72697
noname#72697

質問者が選んだベストアンサー

  • ベストアンサー
  • madman
  • ベストアンサー率24% (612/2465)
回答No.1

こんな感じでしょうか。 Sub Macro1() Dim i As Integer Dim buff As String i = 2 While 1 If Range("B" & i).Value = "" Then End End If buff = Range("B" & i).Value Range("B" & i).Value = Left(buff, 7) + " " + Mid(buff, 8, 5) + " " + Right(buff, 6) i = i + 1 Wend End Sub

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

VBAでは下記。 Private Sub Worksheet_Activate() n=20 for i=1 to n a = Worksheets("sheet1").cells(i,1) 'A列のセルデータ Worksheets("sheet1").Cells(i,2) = Mid$(a, 1, 7) & " " & Mid(a, 8, 5) & " " & Mid(a, 13, 7) 'B列にデータをセット next i End Sub ------------ 関数式ならA3のセルのデータをB3にセットするなら =MID(A3,1,7) & " " & MID(A3,8,5) & " " & MID(A3,13,7) で同じものです。関数式のほうは、B列で式を複写してください。

noname#72697
質問者

お礼

よくわかりました ありがとうございました。

関連するQ&A

  • Excel2000マクロ記述について

    下記の条件で下記のようなマスターを参照してマクロを作成したいのですが、どのように記述したら良いでしょうか シート名 滞留在庫表 条件 c列の5行目からdataが入っています。data例(AD1200S0110000000P)18桁 dataの頭8桁目がBの場合はL221をV列に表示 dataの頭8桁目が、A又はM又Pの場合はL222をV列に表示 dataの頭8桁目がB、A、M、P以外の場合は、ブランクをV列に表示 シート名 表示再設定マスタ             A列    B列 5行目****************** 6行目*******B********** L221 7行目*******A********** L222 8行目*******M********** L222 9行目*******P********** L222

  • エクセルのマクロ記述について

    B列~I列に入力されている最終行まで下記処理を行うマクロの記述を教えてください。 整数のみ小数点以下1桁表示にする。(例: 2→2.0) 小数(例:1.32、2.4)の場合は何もしない。

  • 住所編集のマクロを組んでいて、ハイフンをいれたい。

    住所編集のマクロを組んでいます。ハイフンをいれたいです。 データ住所にはハイフンが入っておらずかわりに半角スペースが入っています。 本来ハイフンがないであろう場所にも半角スペース入っている場合も有り。 データ例※●○◎は文字です。数字は伏せていません。 ●●●市●●区●●● 3丁目 8 9 ●●マンション ○○市 ○○○区○○5丁目15 20 ◎◎◎市 ◎◎◎◎ 6丁目 45 ◎◎◎◎マンション スペースをハイフンにする置換をマクロで記録しました。 ●●●市●●区●●●-3丁目-8-9-●●マンション ○○市-○○○区○○5丁目15-20 ◎◎◎市-◎◎◎◎-6丁目-45-◎◎◎◎マンション 当然ですが、文字列と文字列の間や 数字と文字列の間にもハイフンが入ってしまいます。 そこで皆様よりお力添えをお願いしたいのですが、 数字と数字の間のみハイフンをいれることは可能でしょうか? 住所件数は不定期です。 上記例はA列に3行 1行目は項目なので合計で4行あると過程します。 勝手申し上げますが納期が迫っておりお返事急いでおります。 どなたかお力をお貸しください! よろしくお願いします。

  • エクセルのマクロで文字の置換について

    エクセルのマクロを使った文字の置換についてお聞きしたことがありましす。 やりたいイメージは例として添付の画像としてアップしましたが、 ・エクセルシートに英数文字列の表がある(例では2行2列ですが、実際は6行48列ぐらいです) ・その表を各英数文字列の間に半角カンマ","を入れて、メモ帳に貼り付けたい   ※実際メモ帳に貼り付ける動作は手動で行うので、クリップボード上で「各英数文字列    の間に半角カンマ","が入っている状態」で構いません。 ・各英数文字列の最初の2文字は必ず"0a"、その後の英数字は3桁または4桁です。 ちなみに、エクセルシートで英数文字列の表をそのままコピーしてメモ帳でペーストすると 各英数文字列の間にスペース(空白)が入ってしまいます。 その後、メモ帳で置換などを使い半角カンマ","を入れてもいいのですが、そこまでをマクロで行いたいと思っております。 上記のことがそもそもエクセルのマクロで出来るかどか分かりませんが、なにか有用な方法がございましたらご教授お願い致します。  ※使用OS:Windows7、エクセルバージョン:2007

  • Excel 2007のマクロ記述について

    Excel 2007で、B4セルからI最終行までの整数のみを小数点以下1桁にする処理をマクロで実行したいのですが、どのように記述したらよいか教えてください。 最終行とはI列にセルの値がある最後の行です。 下記の例のマクロ実行結果は、1→1.0、2→2.0となります。 (例)      列      A  B    C    D    E   F  G   H  I    J      K  行4  A1 0.9   0.9   0.9   0.9  1.2  1.2   2  2   CIRCLE  CIRCLE    5  A2 1.4   1.4   1.6   1.6   1   1  1.5  1.5  CIRCLE  CIRCLE    6  A3 0.71  0.71   0.71  0.71  1   1  1.5  1.5  CIRCLE  CIRCLE マクロ実行結果      列      A  B    C    D    E   F  G   H   I    J      K  行4  A1 0.9   0.9   0.9   0.9  1.2  1.2  2.0  2.0  CIRCLE  CIRCLE    5  A2 1.4   1.4   1.6   1.6  1.0  1.0  1.5  1.5  CIRCLE  CIRCLE    6  A3 0.71  0.71   0.71  0.71  1.0  1.0  1.5  1.5  CIRCLE  CIRCLE

  • マクロ検索について

    下記のようなデータベースがあります。A列からT列までにデータが入っています。 D列に下記のデータがあります。頭2桁がADのものだけを検索したい場合は、マクロでは どう記述すればいいでしょうか。教えてください。 AA0G120Y0000 AA0H12000000 AA0S01000000 AA0S03B00000 AA0S05A00000 AD120000110000000P AD120000110000000P AD120000110000000P AD120000110000000P

  • excel2000マクロ記述

    シート名JISEKIの中のF列には2行目から4桁のコードが入っています。 X列の2行目から数値データが入っています。 条件としてF列のコードがA310又はA505で、X列の数値がマイナスの場合は、 R列からW列の数値データを非表示にしたい。 これをマクロ化したいのですが、記述の仕方を教えてください。

  • エクセルのソートのマクロ

    エクセルでのソートのマクロを教えてください。  範囲選択は手動でその都度変更します。優先列、昇順は変更ありません。 例えば、AからE列までデータがあり、第一優先列をD列、第二優先列をA列として、それぞれ昇順でソートします。 範囲はその都度手動で複数行を全列選択します。 つまり、適宜、複数行を選択してからこのマクロを実行すれば常に先の形式でソートできるようにしたいです。  わかりにくい記述で恐縮ですがよろしくお願いします。

  • エクセル マクロの記述をご教示下さい。

    宜しくお願い致します。 ● Aファイルに下記のようなマクロを記述したい。 ・BファイルのB列の6行目から2000行に入力されている、データを 削除する。 ・出来れば、人為的にBファイルは、立ち上げない状態で削除したい。 ・マクロを実行することによって、自動的に立ち上がるのは結構です。 ・また、削除後、Bファイルは立ち上がっていても結構です。 ご指導のほど宜しく御願い申し上げます。

  • エクセルのマクロ記述について

    J列、K列に入力されている行まで下記処理を行うマクロの記述を教えてください。 J列のセルの文字列がにSHAPEの場合、その行のB~E列のセルの色を黄色にする。 K列のセルの文字列がにSHAPEの場合、その行のF~I列のセルの色を黄色にする。

専門家に質問してみよう