• 締切済み

文字列を取り出して入力するマクロ

A列に 「・・・・・第1・・・10:00・・・」 「氏名」 「氏名」 「・・・・・第2・・・10:30・・・」 というふうにで文字列が入っています。 A列に第〇、時間、が入っていたら、A列に第〇、B列に時刻、のみを入力したいです。・・・・には扱うリストによって、文字列が異なるので、置換で削除ができません。また、関数だとA列に直接入力できないので、他の列に入力してからAとBに移動しないといけないと思いますので、マクロでやりたいです(この作業を毎日のようにやらないといけない)。どうか教えてください。

みんなの回答

  • mt2015
  • ベストアンサー率49% (258/524)
回答No.2

マクロでやるにしても情報が足りません。 ・Excelのバージョンは。 ・第○や時刻と他の不要な文字列を区切っている文字(例:半角スペース、カンマ等)があるのか。  それとも固定長で決められた位置の文字だけを残せばよいのか。 ・第○、時刻どちらかしかない、またはどちらも無い場合もあるのか。 ・どちらも無い文字列が有りうる場合、氏名との区別はどうするのか。 A列を書き換えてしまうと言う事は、元には戻せなくなると言う事ですが大丈夫なのですか? よほどシンプルな物でない限り書き換えはお勧めしません。

honeybeans
質問者

お礼

この前の回答、ありがとうございました。こちら、情報が足りないとのこと、失礼しました。結局、違う方法で対処することにいたしました。また、質問するときにはお願いいたしましす。

回答No.1

エクセルは操作したこともない70の爺だが、少し気になったので。 添付図のようなことを実現したのだと推測するが・・・ >マクロでやりたいです! マクロで、質問のような抜き出しを実現する必要があるのかな?VBAで添付図のような関数を書けば、容易に実現できるのでは・・・。しかも、その関数は、VBAを知っていれば誰でも書ける代物。ということで、VBA関数も視野に入れたらと思う。まあ、Excelもそのマクロとやらも一度も操作したこともない爺の素朴な疑問ですが・・・。

honeybeans
質問者

お礼

そのやり方は分からないです。違う方法で対処することにしました。

関連するQ&A

  • 文字列リストから文字列リストの抽出

    A列のリストの文字列に、B列のリストの文字が含まれていたらそれを取り出すにはどうしたらよいでしょうか? ※画像を参照してください。 例:A2セルの文字列にB2~B4の文字が含まれていないかをチェック、含まれていた文字列(B2~B4の内容)をC列に表示する。 関数なら何とかできますが、マクロの知識がほとんどありませんのでマクロが必要になるようでしたら詳しく教えていただければ幸いです。 よろしくお願いいたします。

  • 文字を変換するマクロ

    こんばんわ。エクセルのマクロについて教えてください。 A列に、「イ」「ロ」「ハ」「ニ」「ホ」という文字が入っており、 これをB列に、 イなら1、ロ→2、ハ→3、ニ→4、ホ→5 というな置換ルールで入力していくマクロは、 どのように組めばよいのでしょうか。 (マクロを組まずとも、  普通に置換を使えばできると思うのですが、  是非、マクロで組みたいので・・・) (A列)(B列)  ロ   2  イ   1  ハ   3  ニ   4  イ   1  ホ   5      ↑   マクロを実行すると、   B列に変換された数値が入力される よろしくお願いします。

  • エクセルの文字列置換マクロに関するご相談

    下方のマクロを実行することにより、 文字列リストの内容に基づいて、 別シート(作業)内の文字列を変換することができます。 文字列からコード値へ変換することを目的にマクロを埋め込んだのですが、 別シート(作業)の文字列をコード値に変換した際、3桁くぎりのコード値が並んだ場合に、 自動で数値として認識されてしまいます。 ※別シート(作業)のセルを文字列し設定しても発生します。 プログラムで回避手段があるようでしたらご教示いただければ幸いです。 例)文字列リストシート A B さる 10 ぞう 15 ごりら 101 きりん 102 わに 103 かば 104 マクロ実行前の作業シート A さる,ぞう ごりら ごりら,きりん,わに さる,ごりら マクロ実行後の作業シート A 10,15 101 101102103 10101 上記マクロ実行後のシートの3~4行目のように、 カンマが取れることを防ぎ、文字列として代入したい所存です。 <マクロ> Sub 文字列リストに基づき連続して置換する() i = 2 Do x1 = Sheets("文字列リスト").Cells(i, 1) x2 = Sheets("文字列リスト").Cells(i, 2) Sheets("作業").Cells.Replace _ What:=x1, Replacement:=x2, _ SearchOrder:=xlByColumns, MatchCase:=True i = i + 1 Loop Until Sheets("文字列リスト").Cells(i, 1) = "" End Sub ご教示いただければ幸いです。 よろしくお願いいたします。

  • 参照文字列から検索文字列を置きの件

    >SUBSTITUTE(SUBSTITUTE(文字列,検索文字1,置換文字1),検索文字2,置換文字2)  上記の関数は8桁以上は出来ません、他の方法の関数があれば、  よろしくお願いします。(13桁)  尚、マクロ以外でできますか。  例、 A-福岡      B-佐賀

  • ExcelVBAでの文字列置換について

    ExcelVBAでの文字列置換について ExcelVBAは全く初心者のですが、下記の処理を早急に行う必要があり、質問させていただきます。 物品の使用者をエクセル管理しています。 シート1のA列に物品名、B列に現使用者名を入力しています。(約2000件) 一部の使用者に変更があった場合に、シート2に振替リストを シート2 A列=現使用者 B列=新使用者 と作成しています。 シート1のB列:現使用者から、シート2のA列:現使用者と同一な文字列を検索し、シート2B列:新使用者に置換するマクロはどのように書けばよいのでしょうか? 可能であれば、シート2のC列に置換結果を表示させたいです。

  • A列の文字列によってB列への入力を変える

    こんにちは。マクロ初心者で、質問なのですが、 エクセルで、A列に入力されている文字列によって、 B列文字を自動で入力するマクロを作成したいのですが、 どのように記述すればよいでしょうか? 例: A列 |B列 |  あ | 01 |A列「あ」の場合、B列の同じ行に「01」  い | 02 |A列「い」の場合、B列の同じ行に「02」 といった感じです。 初歩的な質問で申し訳ございませんがご教授願います。

  • 文字列を取り出す

    A列に[ No.××× ] あああああ・・・と入力されています。 毎回入力される行数が違います(100~300行) B列にNo.×××という文字列だけ取り出すために下記の関数が入っているのですが A列に入力のあった分だけをマクロで処理できませんか。 =LEFT(RIGHT(A2,LEN(A2)-FIND("[ No",A2,1)),8) 現在は300行目までこの関数が入った状態で、エクセルが重い気がします。

  • エクセル 特定の文字を検索して置き換えるマクロ

    次のような連続作業をマクロでできますか。 A列にある特定の文字を検索して、その行にあるB列セルの文字(不定)とそのB列の1行下にあるセルの文字(不定)を連結または置換させてB列に表示 (それぞれ単独に使用) 例 A100に「○○○」の文字を見つけたら、B100にある「□□□□」とB101にある「△△」を連結させB100に「□□□□△△」と置換表示 置き換える場合 A100に「○○○」の文字を見つけたら、B101にある「△△」をB100に「△△」と置換表示 同列の置換は例題でも見つけられて利用できていますが、ひとつ下のセルがからむというのがミソです。 よろしくお願いします。 Windows7/office2013

  • マクロでシリアル値を文字列にしたい。

    マクロでシリアル値を文字列にしたい。 すみません、マクロでシリアル値を文字列に変えたいと思っています。 Range("A1").Value = Format(Now,"yyyy年") とすれば現在の日付のデーターが文字列になるのですが、これを例えば、B2にシリアル値で日付が入力されていてA1文字列に置き換える方法はあるのでしょうか?出来れば記述の仕方を教えていただきたいのですが宜しくお願いします。

  • <文字列マクロについて>

    <文字列マクロについて> 皆さま お力を貸して下さい。 初心者で、何もわからず書いておりますがすみません。 下記の2つのマクロを教えて下さい。 ?横に並んだ「ある行」に在るデータを「列」に変換し、  指定した数だけ並べる    あいうえお    ←A1セルからE1まで5列(これは状況により変わる)       ↓(マクロ実行:3行同じ数だけ並べるという指定)  あ        →A1セルから下にひたすら、同じ文字が続き順に並ぶ  あ  あ  い  い  い  う  う        →A1セルから下に並べる(3行は指定できれば別の数字にも変えたい  う  え  え  え  お  お  お ?規則的に並んだデータのまとまりをセットで移動する。  例だと5つの塊(これは変数とおきたい)    あ A              a  い B              b  う C               c   え D               d  お E              e    ↓(マクロ実行)  あ  い  う  え  お  A  B  C  D  E      ・  ・  ・  ・    a b c d e    

専門家に質問してみよう