• 締切済み

入力したデータの頭文字によってセルを変えるマクロ

tsubu-yukiの回答

回答No.1

んー、例えば、 評価する文字列を変数「myStr」に格納するとして・・ Dim myStr As String   myStr = 代入するための式   If Mid(myStr, 1, 3) = "AAA" Then     Range("A" & 行) = myStr   ElseIf Mid(myStr, 1, 3) = "BAA" Then     Range("B" & 行) = myStr   Else     適切なエラー処理   End If とか。 Mid関数にこだわらず、Left関数でもOKでしょうし、InStr を使っても良いでしょうし。 条件分岐が多いのであれば、Select Case を使うとか。 いろいろ考えられますが、お好みのやり方でどうぞ。 「行」の判断は条件が分からないので割愛です。

関連するQ&A

  • マクロを使って文字が入力されたセル数を数える

    マクロを用いて、文字が入力されたセル数をカウントしたいと考えていますがうまくいかず悩んでおります... 具体的には、セルB1からB1000にデータが入力された場合、左隣のA列に1から番号を付したいと考えています. B列が空白のままの行は、A列も空白にしておきたいです. (セルB1からB1000まで全てにデータが入力された場合、A1からA1000には1から1000までの番号が入る) また、A列に付された番号を判断し、100番毎にA列からE列までセル背景を色分けしていきたいと考えています. (B列が空白ならxlNoneでその行は無色のままにしたい) セル背景の色分けだけであればうまくいったのですが、B列の入力状況により自動でA列に番号(数字)を変化させたら思い通りに動かず困っています. ご教示、宜しくお願いします.

  • シート複写時、データの入力規則が別セルに複写される

    シートをコピーすると、データの入力規則が、違うセルにもコピーされてしまいます。 例えば、Sheet1のA列(A6からA20セルまで)に、データの入力規則として、「=JOB!$B$3:$B$1048576」という他のシートを参照してプルダウンリストを表示するようにしています。 このSheet1を、シートタブからシートのコピーをして、Sheet2に複写したとします。 すると、A列のデータの入力規則が、A列だけではなく、B列(B6からB20セルまで)も、データの入力規則「=JOB!$B$3:$B$1048576」になってしまいます。 B列は、従来どおりデータの入力規則がないようにしたいのですが、どうしたらいいでしょうか。

  • Excelの連続データ入力について

    Excelで連続データを入力したいのですが、連続するデータが複数重なると(かつ連続しない文字も含んでいます)これらのオートフィルは重なったセルも加算され狙ったものとは違う値になってしまいます。 例えば、 =A1 aaa(ただの文字) =B1 これをオートフィルで連続データを作成すると、 =A1 aaa =B1 =A4 aaa =B4 =A7 aaa =B7 こうなります。 本当は、 =A1 aaa =B1 =A2 aaa =B2 =A3 aaa =B3 こうしたいのです。 良い方法はありませんでしょうか? 宜しくお願い致します。

  • 一つのセルに特定の文字が入ると隣のセルに条件に合った文字を入力したい

    列Aと列Bに特定の条件を入力します。 列Cに列Aに入力した行の文字を入力規則のリストで呼び出すと、列Dに列Aと同じ行に入っている列Bの文字を自動で入力するようにしたいのですが、どのようにしたらいいでしょうか? IF関数で条件分岐させようと思ったのですが列AもBも随時追加されていくのでこの方法が使えませんでした。

  • 複数セルから同じ文字列を抽出、並べ替え

    お世話になります。 セル式で定義したいのですが、いい考えが浮かびません。 A列に以下のような文字が並んでいるとします。実際は下に無制限とします。 A1  AAA A2  BBB A3  CCC A4  AAA A5  CCC A6  DDD A7  AAA これらのセル中の文字列から以下のように並べ替えてB列に配置したいのです。 B1  AAA B2  BBB B3  CCC B4  DDD 4種類の文字列となるのでB1:B4まで並べたいと思います。 B列のセルにセル式を記述したいと思います。 以上、ご教授下さい。

  • 【EXCEL】セルに入力する文字数を制限したい

    過去のQ&Aを検索しましたがそれらしき物が見つからないのでお尋ねします。 エクセルのセルに入力出来る文字列を12桁に制限したいのですが、使用する文字列には0が含まれる事がある為か入力規則の文字列の制限で最小12,最大12では上手く行きません。 多分"000000000001"は"1"に同じなのでエラーになると思います。 12桁の文字列は0~9を含むアルファベットです。 (例:0A393Z093B00)です。 よろしくお願いします。

  • 入力規則の文字数設定について

    入力規則の文字数設定がうまくいきません。 ご存知の方教えて下さい。 入力規則とIF関数で以下に設定したいのです。。 理論 セルAが0~7文字以下 真の値 セルBが0~9文字入力可 偽の値 セルBが0文字まで入力可=入力不可 偽の値はうまくいくのですが、真の値でセルBに9文字以上入れることが出来てしまいます。 私のセルBの設定は 入力規則  設定   入力値の種類ー文字列(長さ指定)   データー次の値の間   最小値ー0   最大値ー=IF(LEN(セルA)>=7,9,0) です。 よろしくお願い致します。

  • Excel 隣のセルの頭文字に応じて文字を自動入力

    Excelの質問です。 隣のセルに入力された文字列の頭の文字に応じて、セルに自動的に文字を入力するにはどうすればよいのでしょうか?関数初心者です。 具体的には、 A1のセルに「T○○○○○」(○は任意の数字)が入力されていれば、頭文字がTなので、B1のセルに東京と自動的に表示する。 A2のセルに「N○○○○○」(○は任意の数字)が入力されていれば、頭文字がNなので、B2のセルに長野と自動的に表示する。 です。 よろしくお願いします。

  • エクセルのマクロで入力文字を一文字ずつ並んだセルに入れる

    エクセルマクロ超初心者です。 エクセルVBAでユーザーフォームを作成しました。 テキストボックスに入力した文字列を「登録」ボタン押下後、エクセルシートのセルに一文字づつ入るようにするにはどうすれば良いでしょうか? 例えばテキストボックスに「kohiro」と入力するとエクセルのsheet1のA1「k」、B1「o」、C1「h」、D1「i」、E1「r」、F1「o」となるようにしたいのです。入力する文字数は0~30文字までで、その都度長さは変わります。どうやって、文字をばらせばいいのか、またどうやって可変長の文字列を指定したセルに入力すればいいのかわかりません。どうかよろしくお願いいたします。

  • マクロ 空白セルへの文字入力

    A列が空白となるまでB列のとこどころに数字が入力されていて空白のセルへ0を入力する。 というマクロがどうしてもできないのですが、ご教示お願いします。