過去ログ

                                Page     775
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼改行を消すマクロ  集計X 03/2/18(火) 18:43
   ┗Re:改行を消すマクロ  パピー 03/2/18(火) 19:42
      ┗Re:改行を消すマクロ【追加】  パピー 03/2/19(水) 10:08
         ┗Re:改行を消すマクロ【追加】  ばば 03/2/19(水) 17:20
            ┗Replace関数を使わずに。  パピー 03/2/20(木) 8:40
               ┗Re:Replace関数を使わずに。  集計X 03/2/20(木) 8:59
                  ┗Re:Replace関数を使わずに。  Jaka 03/2/20(木) 9:31
                     ┣Re:Replace関数を使わずに。  ばば 03/2/20(木) 10:46
                     ┗Re:Replace関数を使わずに。  集計X 03/2/21(金) 12:09

 ───────────────────────────────────────
 ■題名 : 改行を消すマクロ
 ■名前 : 集計X
 ■日付 : 03/2/18(火) 18:43
 -------------------------------------------------------------------------
   はじめまして。

K列には改行を含む文章が入っています。
マクロ前半では、全角大文字英数カナを半角小文字英数カナに変換しています。
その後に、改行を削除したいのです。
そこで以下のようなマクロを組んでいます。

-------------------------------
'K列を昇順でソート
  Cells.Select
  Application.CutCopyMode = False
  Selection.Sort Key1:=Range("K1"), Order1:=xlAscending, Header:=xlGuess, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
    :=xlPinYin

'K列のセル内改行を除去
  Cells.Replace What:=Chr(10), Replacement:=" ", LookAt:=xlPart, SearchOrder _
  :=xlByRows, MatchCase:=False

  Range("A1").Select
....
-----------------------------------
これを走らせると場合により、改行除去のところで
とまってしまいます。
なにが原因でしょうか?
 ───────────────────────────────────────  ■題名 : Re:改行を消すマクロ  ■名前 : パピー  ■日付 : 03/2/18(火) 19:42  -------------------------------------------------------------------------
   ▼集計X さん:こんばんは。

>その後に、改行を削除したいのです。

次のコードが参考になりませんか?
A1セルの内容をC1セルに表示します。
A1セルに改行の入ったデータを準備してください。

Sub Test()
  Range("C1") = Replace(Range("A1"), vbLf, "")
End Sub
 ───────────────────────────────────────  ■題名 : Re:改行を消すマクロ【追加】  ■名前 : パピー  ■日付 : 03/2/19(水) 10:08  -------------------------------------------------------------------------
   パピーです。
追加します。
次のコードは、K列のセルを対象としました。
(K2セルからK列のデータのある最後まで)

Sub test1()
  For i = 2 To Cells(Rows.Count, 11).End(xlUp).Row
    Range("K" & i) = Replace(Range("K" & i), vbLf, "")
  Next
End Sub
 ───────────────────────────────────────  ■題名 : Re:改行を消すマクロ【追加】  ■名前 : ばば  ■日付 : 03/2/19(水) 17:20  -------------------------------------------------------------------------
   横から失礼します。

Replace関数はEX2000から使えたと思いますが、
EX97でReplace関数に変わるものを探しています。
自分で作ればいいのかしれませんが、作り方も分かりません。

Replace関数の97バージョンお分かりでした教えてください。

>Sub test1()
>  For i = 2 To Cells(Rows.Count, 11).End(xlUp).Row
>    Range("K" & i) = Replace(Range("K" & i), vbLf, "")
>  Next
>End Sub
 ───────────────────────────────────────  ■題名 : Replace関数を使わずに。  ■名前 : パピー  ■日付 : 03/2/20(木) 8:40  -------------------------------------------------------------------------
   ▼ばば さん:こんにちは。

>Replace関数の97バージョンお分かりでした教えてください。

すいません、97バージョンの件わかりません。
そこで、Replace関数を使わずに作成してみました。
サンプルは、A1セルの文字列をC1セルに結果表示します。
試してみて下さい。

Sub test1()
Dim M As String
Dim L As Integer
 L = Len(Range("A1"))
 M = ""
 For i = 1 To L
  If Mid(Range("A1"), i, 1) <> Chr(10) Then 'vbLf 又は Chr(10)
   M = M & Mid(Range("A1"), i, 1)
  End If
 Next
 Range("C1") = M
 Range("C1").WrapText = False 'Trueの場合セル内の文字列を列幅で折り返す。
End Sub
 ───────────────────────────────────────  ■題名 : Re:Replace関数を使わずに。  ■名前 : 集計X <yosiwo@tokyo24.com>  ■日付 : 03/2/20(木) 8:59  -------------------------------------------------------------------------
   お返事遅れてすみません。
いろいろご返答いただき、恐縮です。
さっそく、試しておりますので、また返答いたします。

ひとまずお礼まで。
 ───────────────────────────────────────  ■題名 : Re:Replace関数を使わずに。  ■名前 : Jaka  ■日付 : 03/2/20(木) 9:31  -------------------------------------------------------------------------
   こんにちは。

Sub ggg()
  Dim myRange As Range
  Set myRange = Range("K2", Cells(Rows.Count, "K").End(xlUp))
  myRange = Application.Substitute(myRange, vbLf, "")
  Set myRange = Nothing
End Sub
 ───────────────────────────────────────  ■題名 : Re:Replace関数を使わずに。  ■名前 : ばば  ■日付 : 03/2/20(木) 10:46  -------------------------------------------------------------------------
   パピーさん Jakaさん ありがとうございました

Substituteを使えばよかったんですね。

今までは、文字列を一度シートに書き出して、Repalceメソッドで処理してました。

参考になりました。ありがとうございました
 ───────────────────────────────────────  ■題名 : Re:Replace関数を使わずに。  ■名前 : 集計X  ■日付 : 03/2/21(金) 12:09  -------------------------------------------------------------------------
   Jaka さん,パピ−さん
ありがとうございました。

助かりました。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 775