teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

説明追記

2020/04/16 12:06

投稿

hatena19
hatena19

スコア34367

answer CHANGED
@@ -1,7 +1,21 @@
1
1
  ```vba
2
2
  Sub InStrのみでできる()
3
- Range("A2").Value = IIf(InStr(Range("A1").Value, "グレープ")>0,"グレープ","")
3
+ If InStr(Range("A1").Value, "グレープ") > 0 Then
4
+ Range("A2").Value = "グレープ"
5
+ Else
6
+ Range("A2").Value = ""
7
+ End If
4
8
  End Sub
5
9
  ```
6
10
 
7
- Leftのみではどう頑張っても文字列の途中の文字を取り出すのは無理。Midを使えば可能だが。
11
+ Leftのみではどう頑張っても文字列の途中の文字を取り出すのは無理。Midを使えば可能だが。
12
+
13
+ ```vba
14
+ Sub Midならできる()
15
+ Dim S1, S2, pos
16
+ S1 = Range("A1").Value
17
+ S2 = "グレープ"
18
+ pos = InStr(S1,S2)
19
+ Range("A2").Value = Mid(S1,pos,len(S2))
20
+ End Sub
21
+ ```

1

説明追記

2020/04/16 12:06

投稿

hatena19
hatena19

スコア34367

answer CHANGED
@@ -2,4 +2,6 @@
2
2
  Sub InStrのみでできる()
3
3
  Range("A2").Value = IIf(InStr(Range("A1").Value, "グレープ")>0,"グレープ","")
4
4
  End Sub
5
- ```
5
+ ```
6
+
7
+ Leftのみではどう頑張っても文字列の途中の文字を取り出すのは無理。Midを使えば可能だが。