回答編集履歴

1

コード例を具体化

2020/04/21 05:10

投稿

programming
programming

スコア476

test CHANGED
@@ -33,3 +33,83 @@
33
33
  凡例を順にたどっていき、特定の条件を満たした文字列を```''```に置き換えたりすれば良いかと思います。
34
34
 
35
35
  またここでは示していませんが、RegExpを使うには別途設定などが必要です。
36
+
37
+
38
+
39
+ ---
40
+
41
+
42
+
43
+ **追記**
44
+
45
+ RegExpを具体的に使うコードを書いてみました。
46
+
47
+ 動作確認はしていないので、そもそも動くかわかりません。
48
+
49
+
50
+
51
+ 事前に参照設定で「Microsoft VBScript Regular Expressions 5.5」にチェック
52
+
53
+
54
+
55
+ ```VBA
56
+
57
+ Sub Sample()
58
+
59
+ 'RegExpオブジェクトの作成
60
+
61
+ Dim reg1 As Object, reg2 As Object
62
+
63
+ Set reg1 = CreateObject("VBScript.RegExp")
64
+
65
+ Set reg2 = CreateObject("VBScript.RegExp")
66
+
67
+
68
+
69
+ '正規表現の指定
70
+
71
+ With reg1
72
+
73
+ .Pattern = "^.*_" '正規表現を定義
74
+
75
+ .IgnoreCase = False '大文字と小文字を区別するかどうか
76
+
77
+ .Global = False '文字列全体を検索するかどうか(Falseだと最初の合致するパターンしか適用されない)
78
+
79
+ End With
80
+
81
+
82
+
83
+ With reg2
84
+
85
+ .Pattern = "BBB"
86
+
87
+ .IgnoreCase = False
88
+
89
+ .Global = True
90
+
91
+ End With
92
+
93
+
94
+
95
+ With Worksheets(1).ChartObjects(1).Chart
96
+
97
+ For i = 1 To .SeriesCollection.Count
98
+
99
+ Dim str As String
100
+
101
+ str = .SeriesCollection(i).Name
102
+
103
+ str = reg1.Replace(str, "") 'strをRegExpのReplaceメソッドで置換
104
+
105
+ str = reg2.Replace(str, "hoge") 'strをRegExpのReplaceメソッドで置換
106
+
107
+ .SeriesCollection(i).Name = str
108
+
109
+ Next i
110
+
111
+ End With
112
+
113
+ End Sub
114
+
115
+ ```