Sub mondai4()
Dim jusyo
Dim ku
Dim si
Dim gyo
For gyo = 2 To 11
jusyo = Range("C" & gyo).Value
ku = InStr(jusyo, "区")
si = InStr(jusyo, "市")
If ku > 0 Then
Range("F" & gyo).Value = Left(jusyo, ku)
Range("G" & gyo).Value = Mid(jusyo, ku + 1)
Else
Range("F" & gyo).Value = Left(jusyo, si)
Range("G" & gyo).Value = Mid(jusyo, si + 1)
End If
Next
End Sub
Sub mondai4()
Dim jusyo
Dim ku
Dim si
Dim gyo
For gyo = 2 To 11
jusyo = Range("C" & gyo).Value
ku = InStr(jusyo, "区")
si = InStr(jusyo, "市")
If ku > 0 Then
Range("F" & gyo).Value = Left(jusyo, ku)
Range("G" & gyo).Value = Mid(jusyo, ku + 1)
Else
Range("F" & gyo).Value = Left(jusyo, si)
Range("G" & gyo).Value = Mid(jusyo, si + 1)
End If
Next
End Sub
シドニーさんの投稿
(投稿ID: 4201)
お世話になっております。解説見る前に過去の動画を見ながら作成していますが、模範解答のようにきれいにならないこともあります泣
問題4で下記のように作成しましたが、無駄が多いように感じています。(マクロ自体は、問題無く動きましたが…)
マクロを書くときに、シンプルに考える工夫などありますか。よく物事を複雑に考えすぎると言われてしまうので…
小川慶一さんのコメント
(コメントID: 5760)
「区」と「市」くらいしかないし、いただいたコードでも良いかと思いますよ。
> マクロを書くときに、シンプルに考える工夫などありますか。よく物事を複雑に考えすぎると言われてしまうので…
普段からシンプルに考え、表現することです。
以前言語の言語能力とプログラミング言語の言語もあるとには高い相関があります。
○エクセルマクロ習得に関係する4つの能力-言語能力
https://www.exvba.com/4skills.php#language
自然言語を運用するときに普段からシンプルに考え表現することが、プログラミング言語を運用するときの能力にもなります。
プログラミング言語を運用するときに普段からシンプルに考え表現することが、自然言語を運用するときの能力にもなります。
> 小川先生
> お世話になっております。解説見る前に過去の動画を見ながら作成していますが、模範解答のようにきれいにならないこともあります泣
> 問題4で下記のように作成しましたが、無駄が多いように感じています。(マクロ自体は、問題無く動きましたが…)
> マクロを書くときに、シンプルに考える工夫などありますか。よく物事を複雑に考えすぎると言われてしまうので…