VBA練習問題解答
練習問題13(文字列関数の練習)解答

Excelマクロ練習問題集、エクセルVBAの学習教材
公開日:2013年5月以前 最終更新日:2019-12-23

練習問題13(文字列関数の練習)解答

マクロVBA練習問題13の解答ページです。


マクロVBA練習問題

・漢字の都道府県名と、漢字の県庁所在地を使い、
 都道府県名(県庁所在地)を作成し、C列に入力して下さい。
・都道府県名と県庁所在地が同じ場合は、
 都道府県名だけにして下さい。

※例
 北海道(札幌)
 青森県

練習問題用のExcelファイル
  A             B            C
都道府県名 県庁所在地 都道府県名(県庁所在地)
北海道(ほっかいどう) 札幌(さっぽろ)
青森県(あおもり) 青森(あおもり)
岩手県(いわて) 盛岡(もりおか)
宮城県(みやぎ) 仙台(せんだい)
秋田県(あきた) 秋田(あきた)
山形県(やまがた) 山形(やまがた)
福島県(ふくしま) 福島(ふくしま)
茨城県(いばらき) 水戸(みと)
栃木県(とちぎ) 宇都宮(うつのみや)
群馬県(ぐんま) 前橋(まえばし)
埼玉県(さいたま) さいたま
千葉県(ちば) 千葉(ちば)
東京都(とうきょう) 東京(とうきょう)
神奈川県(かながわ) 横浜(よこはま)
新潟県(にいがた) 新潟(にいがた)
富山県(とやま) 富山(とやま)
石川県(いしかわ) 金沢(かなざわ)
福井県(ふくい) 福井(ふくい)
山梨県(やまなし) 甲府(こうふ)
長野県(ながの) 長野(ながの)
岐阜県(ぎふ) 岐阜(ぎふ)
静岡県(しずおか) 静岡(しずおか)
愛知県(あいち) 名古屋(なごや)
三重県(みえ) 津(つ)
滋賀県(しが) 大津(おおつ)
京都府(きょうと) 京都(きょうと)
大阪府(おおさか) 大阪(おおさか)
兵庫県(ひょうご) 神戸(こうべ)
奈良県(なら) 奈良(なら)
和歌山県(わかやま) 和歌山(わかやま)
鳥取県(とっとり) 鳥取(とっとり)
島根県(しまね) 松江(まつえ)
岡山県(おかやま) 岡山(おかやま)
広島県(ひろしま) 広島(ひろしま)
山口県(やまぐち) 山口(やまぐち)
徳島県(とくしま) 徳島(とくしま)
香川県(かがわ) 高松(たかまつ)
愛媛県(えひめ) 松山(まつやま)
高知県(こうち) 高知(こうち)
福岡県(ふくおか) 福岡(ふくおか)
佐賀県(さが) 佐賀(さが)
長崎県(ながさき) 長崎(ながさき)
熊本県(くまもと) 熊本(くまもと)
大分県(おおいた) 大分(おおいた)
宮崎県(みやざき) 宮崎(みやざき)
鹿児島県(かごしま) 鹿児島(かごしま)
沖縄県(おきなわ) 那覇(なは)

※上記表の全体を選択し、コピー(Ctrl+C)の後、エクセルのシートのA1セルに貼り付け(Ctrl+V)してください。

では、お考えください。
すぐに解答を見ずに、必ず自力で書けるとこまででも良いので書きましょう。

シンキングタイム

シンキングタイム開始


シンキングタイム終了

当サイトのコンテンツ
ExcelマクロVBA入門
この「VBA入門」シリーズは、マクロVBAを実務で自在に使いこなし業務を効率化・自動化できるようになることを目的としています。始めはより詳しく丁寧に解説しつつ少しずつ難易度を上げることで無理なく学習を進められるようにしています。ただし入門といっても、後半にはかなり高度な内容にも触れています。

書くべきマクロVBAが分からない時は、
ここでじっくり勉強してから再チャレンジしてください。

マクロVBA練習問題解答

では解答のマクロVBAコードです。
※.Valueは省略しています。

Sub 練習問題13()
  Dim i As Long
  Dim strPref As String
  Dim strCity As String
  For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
    If InStr(Cells(i, 1), "(") > 0 Then
      strPref = Left(Cells(i, 1), InStr(Cells(i, 1), "(") - 1)
    Else
      strPref = Cells(i, 1)
    End If
    If InStr(Cells(i, 2), "(") > 0 Then
      strCity = Left(Cells(i, 2), InStr(Cells(i, 2), "(") - 1)
    Else
      strCity = Cells(i, 2)
    End If
    If Left(strPref, Len(strPref) - 1) = strCity Then
      Cells(i, 3) = strPref
    Else
      Cells(i, 3) = strPref & "(" & strCity & ")"
    End If
  Next
End Sub

回答のVBAコードは、問題のデータにかなり依存する記述となっています。
文字列操作は、課題ごとに工夫する必要があります。

マクロにおいては、文字列関数は非常に良く使います。
関数を知らないと、どう使用もできない場合が多くあります。
ぜひ、マスターして下さい。

以下も参考にして下さい。

ExcelマクロVBA入門.第47回.VBA関数(文字列操作,Replace,InStr,StrConv)
文字列操作は、マクロVBAでプログラミングする上で必須です、データ整形、データクレンジング、データクリーニング、これらを行うVBAにおいて不可欠なものが、文字列操作関数です。ここでは、文字列操作に関するVBA関数の一覧と Replace関数、InStr関数、StrConv関数について解説します。



同じテーマ「マクロVBA練習問題解答」の記事

練習問題10(罫線の練習)解答

マクロVBA練習問題10の解答ページです。マクロVBA練習問題 ・客単価を計算してD列に入れて下さい。・客単価は小数以下2桁で表示して下さい。・罫線を、参考図のように設定して下さい。※客単価=売上÷客数 練習問題用のExcelファイル こちらからダウンロードできます。
練習問題11(色々なコピーの練習)解答
マクロVBA練習問題11の解答ページです。マクロVBA練習問題 ・A1セル~B6セルを D1セル~E6セルに全てコピーして下さい。・A1セル~B6セルを G1セル~H6セルに値のみコピーして下さい。練習問題用のExcelファイル こちらからダウンロードできます。
練習問題12(日付関数の練習)解答
マクロVBA練習問題12の解答ページです。マクロVBA練習問題 ・曜日別の売上合計・日数・平均売上を計算し、G2~I8に入れて下さい。練習問題用のExcelファイル こちらからダウンロードできます。zipはこちらです。
練習問題13(文字列関数の練習)解答
練習問題14(行の挿入・削除の練習)解答
マクロVBA練習問題14の解答ページです。マクロVBA練習問題 ・区分がDの行を削除して下さい。・区分がIの行の前に新規行を挿入して下さい。練習問題用のExcelファイル こちらからダウンロードできます。
練習問題15(Withとオブジェクト変数の練習)解答
マクロVBA練習問題15の解答ページです。マクロVBA練習問題 ・シート「練習15」の表データを、シート「練習15_回答」に支店別・分類別に集計して下さい。※シート「練習15_回答」には、すべての支店と分類が必ずあるとします。
練習問題16(WorksheetFunctionの練習)解答
マクロVBA練習問題16の回答ページです。マクロVBA練習問題 ・シート「練習16_マスタ」より、商品名と単価を取得し、それぞれのセル(C列とD列)に入れて下さい。・シート「練習16_マスタ」に存在しない場合は、空欄のままにして下さい。
練習問題17(ブック・シートの操作の練習)解答
マクロVBA練習問題17の解答ページです。マクロVBA練習問題 ※まず最初に A列にパス、B列にブック名(エクセルのファイル名)を、実際のあなたのPC環境に合わせて入力して下さい。・シート「練習17_回答」を新規に追加し、そのA列にブック名 B列にそのブックの全シート名の一覧を入れて下さい。
練習問題18(Dir関数の練習)解答
マクロVBA練習問題18の解答ページです。マクロVBA練習問題 ・A1に指定したフォルダ内にある、全てのエクセルファイル(xls,xlsx,xlsm)のブック名をA2以降に、そのブックの全シート名をB2から右に入れて下さい。(B2,C2,D2,…そのブックの全シート名を横に入れていく) ※サブフォルダ以下のファイル…
練習問題19(総合練習1)解答
マクロVBA練習問題19の回答ページです。マクロVBA練習問題 ・下記表の空欄を全て埋めて下さい。・客単価は、小数以下1桁で表示。・1週間の合計の客単価より低い日の客単価は赤字にして下さい。※客単価=売上÷客数 練習問題用のExcelファイル こちらからダウンロードできます。
練習問題20(総合練習2)解答
マクロVBA練習問題20の解答ページです。マクロVBA練習問題 ・「元表」を下の「出来上がりサンプル」のようにして下さい。・月が変わったら1行挿入して、挿入した行に月の合計売上を入れて下さい。A列に、○月合計 B列に、売上の合計 それぞれ太字にして下さい。


新着記事NEW ・・・新着記事一覧を見る

TRIMRANGE関数(セル範囲をトリム:端の空白セルを除外)|エクセル入門(2024-08-30)
正規表現関数(REGEXTEST,REGEXREPLACE,REGEXEXTRACT)|エクセル入門(2024-07-02)
エクセルが起動しない、Excelが立ち上がらない|エクセル雑感(2024-04-11)
ブール型(Boolean)のis変数・フラグについて|VBA技術解説(2024-04-05)
テキストの内容によって図形を削除する|VBA技術解説(2024-04-02)
ExcelマクロVBA入門目次|エクセルの神髄(2024-03-20)
VBA10大躓きポイント(初心者が躓きやすいポイント)|VBA技術解説(2024-03-05)
テンキーのスクリーンキーボード作成|ユーザーフォーム入門(2024-02-26)
無効な前方参照か、コンパイルされていない種類への参照です。|エクセル雑感(2024-02-17)
初級脱出10問パック|VBA練習問題(2024-01-24)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.RangeとCellsの使い方|VBA入門
6.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門
7.セルのクリア(Clear,ClearContents)|VBA入門
8.メッセージボックス(MsgBox関数)|VBA入門
9.条件分岐(Select Case)|VBA入門
10.マクロとは?VBAとは?VBAでできること|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。


このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ