V列に "GI" "GII" "GIII"がある場合R列の同じ行に取得する。 | |
---|---|
[195491] V列に "GI" "GII" "GIII"がある場合R列の同じ行に取得する。- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ こうちゃん -(2023/01/09(19:47)) □U R L/ よろしくお願いいたします。 Sheet1のR5行目からオープンがあったら 同じ行のV列に "GI" "GII" "GIII" があったらR列の同じ行に取得したいのですが "GI" "GII" "GIII"がない場合はそのままオープンにします。 TESTのコードを実行しても うまくいきません。 ご指導おねがいしたいのですが 宜しくお願い致します。 (例1) Sheet1 R列 V列 行 5 オープン 京王杯2歳ステークス GII 6 新馬 サラ系2歳新馬 7 500万下 白菊賞 8 オープン 京王杯2歳ステークス GII 9 500万下 ベゴニア賞 10 オープン 阪神ジュベナイルフィリーズ GI 11 オープン アルテミスステークス GIII 12 未勝利 サラ系2歳未勝利 13 オープン 京王杯2歳ステークス GII 14 500万下 サラ系2歳500万円以下 15 新馬 サラ系2歳新馬 16 オープン 福島2歳ステークス 17 18 オープン 阪神ジュベナイルフィリーズ GI 19 未勝利 サラ系2歳未勝利 20 新馬 サラ系2歳新馬 Sub TEST() Dim v, W Dim i As Long Dim Str As String v = Worksheets("Sheet1").Range("R5:V20").Value ReDim W(1 To UBound(v), 1 To 1) For i = 1 To UBound(v) If v(i, 1) = "オープン" Then Str = v(i, 5) If InStr(Str, "G") > 0 Then W(i, 1) = Mid(Str, InStr(Str, "G"), Len(Str) - InStr(Str, "G")) Else W(i, 1) = v(i, 1) End If Else W(i, 1) = v(i, 1) End If Next i Worksheets("Sheet1").Range("R5").Resize(UBound(v)).Value = W Erase v, W End Sub TESTのコードを実行したら この様になってしまいます。 (例2) Sheet1 R列 V列 行 5 GI 京王杯2歳ステークス GII 6 新馬 サラ系2歳新馬 7 500万下 白菊賞 8 GI 京王杯2歳ステークス GII 9 500万下 ベゴニア賞 10 G 阪神ジュベナイルフィリーズ GI 11 GII アルテミスステークス GIII 12 未勝利 サラ系2歳未勝利 13 GI 京王杯2歳ステークス GII 14 500万下 サラ系2歳500万円以下 15 新馬 サラ系2歳新馬 16 オープン 福島2歳ステークス 17 18 オープン 阪神ジュベナイルフィリーズ GI 19 未勝利 サラ系2歳未勝利 20 新馬 サラ系2歳新馬 例3の様にしたいのですが (例3) Sheet1 R列 V列 行 5 GII 京王杯2歳ステークス GII 6 新馬 サラ系2歳新馬 7 500万下 白菊賞 8 GII 京王杯2歳ステークス GII 9 500万下 ベゴニア賞 10 GI 阪神ジュベナイルフィリーズ GI 11 GIII アルテミスステークス GIII 12 未勝利 サラ系2歳未勝利 13 GII 京王杯2歳ステークス GII 14 500万下 サラ系2歳500万円以下 15 新馬 サラ系2歳新馬 16 オープン 福島2歳ステークス 17 18 オープン 阪神ジュベナイルフィリーズ GI 19 未勝利 サラ系2歳未勝利 20 新馬 サラ系2歳新馬 OP2003は、うまく実行できていたんですが OP2010に変えたらうまく取得できないみたいです。 ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ |
[195492] Re[1]: V列に - ■記事引用/メール受信=OFF■ □投稿者/ こうちゃん -(2023/01/09(19:52)) □U R L/ すいません 例 2,3の18行目がちがってました。 (例2) 18 G 阪神ジュベナイルフィリーズ GI (例3) 18 GI 阪神ジュベナイルフィリーズ GI 書き間違え、すいませんでした。 ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ |
[195493] Re[2]: V列に - ■記事引用/メール受信=OFF■ □投稿者/ 半平太 -(2023/01/09(20:11)) □U R L/ >W(i, 1) = Mid(Str, InStr(Str, "G"), Len(Str) - InStr(Str, "G")) W(i, 1) = Mid(Str, InStr(Str, "G"), Len(Str) - InStr(Str, "G") + 1) ~~↑~~ じゃないですか? |
[195494] Re[3]: V列に - ■ / 記事引用/メール受信=OFF■ □投稿者/ こうちゃん -(2023/01/09(21:22)) □U R L/ 半平太さん、 ありがとうございます。 >InStr(Str, "G") + 1) + 1 を追加するんですね。 勉強になりました。 ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ |
このトピックに書きこむ |
---|