ExcelマクロVBA練習問題解答 | 練習問題13(文字列関数の練習)回答 | Excelマクロ練習問題集、エクセルVBAの学習教材



最終更新日:2015-10-22

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

練習問題13の回答ページです、


問題

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


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

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

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


では、お考えください。

すぐに回答を見ずに、必ず自力で書けるとこまででも良いので書きましょう。


・・
・・・
・・・・
・・・・・

当サイトのコンテンツ

ExcelマクロVBA入門

ここで、じっくり勉強して下さい。



・・
・・・
・・・・
・・・・・




では、回答です。

Sub 練習問題13()
  Dim i As Long
  Dim strPref As String
  Dim strCity As String
  Range("G2:I8").ClearContents
  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練習問題解答」の記事

練習問題10(罫線の練習)回答
練習問題11(色々なコピーの練習)回答
練習問題12(日付関数の練習)回答
練習問題13(文字列関数の練習)回答
練習問題14(行の挿入・削除の練習)回答
練習問題15(Withとオブジェクト変数の練習)回答
練習問題16(WorksheetFunctionの練習)回答
練習問題17(ブック・シートの操作の練習)回答
練習問題18(Dir関数の練習)回答
練習問題19(総合練習1)回答
練習問題20(総合練習2)回答

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

Excelシートの複雑な計算式を解析するVBA|VBAサンプル集(2月18日)
VBAクラスの作り方:独自Rangeっぽいものを作ってみた|VBA技術解説(2月16日)
VBAクラスの作り方:列名のプロパティを自動作成する|VBA技術解説(2月14日)
VBAクラスの作り方:列名の入力支援と列移動対応|VBA技術解説(2月11日)
クラスを使って他ブックのイベントを補足する|VBA技術解説(2月6日)
Excelアドインの作成と登録について|VBA技術解説(2月3日)
参照設定、CreateObject、オブジェクト式の一覧|VBA技術解説(1月20日)
VBAでファイルを規定のアプリで開く方法|VBA技術解説(1月20日)
ドキュメントプロパティ(BuiltinDocumentProperties,CustomDocumentProperties)|VBA技術解説(1月19日)
他ブックへのリンクエラーを探し解除|VBAサンプル集(1月15日)

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

1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.変数とデータ型(Dim)|ExcelマクロVBA入門
4.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
5.RangeとCellsの使い方|ExcelマクロVBA入門
6.マクロって何?VBAって何?|ExcelマクロVBA入門
7.繰り返し処理(For Next)|ExcelマクロVBA入門
8.とにかく書いて見よう(Sub,End Sub)|VBA入門
9.定数と型宣言文字(Const)|ExcelマクロVBA入門
10.ひらがな⇔カタカナの変換|エクセル基本操作



  • >
  • >
  • >
  • 練習問題13(文字列関数の練習)回答

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


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





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

    本文下部へ

    ↑ PAGE TOP