戻る  □一般操作のサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 親トピックをトピックトップへ ]
このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 

このトピック参照回数 :
Re[5]: 文字列内の一文字のみ変更

    [194884] Re[5]: 文字列内の一文字のみ変更-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ ひまわり -(2022/05/07(21:21))
    □U R L/

      マナさん

      質問がわかりづらくて本当にすいませんでした。
      教えていただいたコードを参考に1行ずつ条件により
      文字列内の後ろから2番目の0を1に書替えることが
      できました。(条件が整わないと0のままにする)
      本当に助かりました。ありがとうございました。







    [194883] Re[4]: 文字列内の一文字のみ変更-

    記事引用/メール受信=OFF■

    □投稿者/ マナ -(2022/05/07(20:38))
    □U R L/
      こうですか?
      
      Option Explicit
      
      Sub test()
          Dim m As Long
          Dim r As Range, v, s
          Dim k As Long
         
          m = Application.Match("START_SETSUBI", Columns(1), 0)
          Set r = Cells(m + 1, 1).Resize(50)
          v = r.Value
          
          For k = 1 To UBound(v, 1)
              s = Split(v(k, 1), ",")
             s(3) = 1
              v(k, 1) = Join(s, ",")
          Next
      
          r.Value = v
          
      End Sub


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [194882] Re[3]: 文字列内の一文字のみ変更-

    記事引用/メール受信=OFF■

    □投稿者/ ひまわり -(2022/05/07(20:22))
    □U R L/

      質問が分かりにくくてすいません。
      一文字("",0,0,0,0)内の後ろから二番目の0のみを1に書き替えることは可能でしょうか?




    [194881] Re[2]: 文字列内の一文字のみ変更-

    記事引用/メール受信=OFF■

    □投稿者/ ひまわり -(2022/05/07(20:01))
    □U R L/

      データはA列に文字列で一文字("",0,0,0,0)で50行入っています。各項目はこの場合関係ありませんでした。




    [194880] Re[1]: 文字列内の一文字のみ変更-

    記事引用/メール受信=OFF■

    □投稿者/ マナ -(2022/05/07(19:09))
    □U R L/

      >各項目のデータがある場合

      どういう意味でしょうか?

      >後ろから2番目の0

      D列の0ということでしょうか?





    [194879] 文字列内の一文字のみ変更-

    ■親トピック/記事引用/メール受信=OFF■

    □投稿者/ ひまわり -(2022/05/07(18:53))
    □U R L/

      お世話になります。

      テキストデータ "",0,0,0,0 の後ろから2番目の0を1に一文字のみ書替えたいのですが、
      可能でしょうか?
      (別に作成している項目毎のデータがない場合は0,ある場合は1に書替える)

      1.オリジナルデータは "",0,0,0,0 が50行(各項目毎に1行使用)
        1) 始まりは START_SETSUBI
        2) 間の行に "",0,0,0,0 が50行
        2) 終わりは END_SETSUBI
          ※始まりの前と終わりの後には別データがあります

      2.データ入力がある場合は "ABC・・",999,999,1,2 
        1) 最初の""は文字数0〜20文字(半角全角混在)
        2) 2番目の0と3番目の0は入力データ数により最大3桁の数字(半角)
        3) 3番目は0と1のどれかで常に一桁(半角)【手入力編集部分】
        4) 4番目は0、1、2、3のどれかで常に一桁(半角)    
          ※後ろから2番目の0より前の文字数は変動する

      3.現在の操作
        手順1) オリジナルデータはテキストファイルのため、START_SETSUBIとEND_SETSUBI間の
            50行分データをエクセルに読み込む(これはVBAでできています)
        手順2) エクセル上で手入力編集
           (後ろから2番目の0を各項目のデータがある場合のみ1に手作業で書替えている)
        手順3) テキストファイルのSTART_SETSUBIとEND_SETSUBI間の元データを削除して新たに
            50行分を書き戻している(これはVBAでできています)

      今、このようなコードを書いているがうまくいきませんと提示できればいいのですが、
      手順2)の後ろから2番目の0の1文字のみを書替えるのコードを、どのように書けばいいのか
      がわかりません。
      どうかよろしくお願いいたします。



このトピック内容の全ページ数 / [0]

- Child Forum -
Edit:ゆう-G