[[20080423113105]] 『文字列結合について』(万年太郎) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『文字列結合について』(万年太郎)
 今日は。A列に苗字、B列に名前を入れたリストが下記の様になっています。
A列とB列を結合してD列に氏名を転記するVBAを作ったのですが、問題があり、わからず投稿します。
問題1:文字列結合1では実行後、A列、B列が消え、D列に"-"しか表示されない
問題2:文字列2を実行するとA列の苗字記入後にスペースを入れてしまうとD列にそれがそのまま反映される

    A	    B
1  苗字	   名前
2  伊藤     一郎
3  田村	   二郎
4  山田	   三郎
5  山本	  与太郎
6  千葉	  太郎

 Sub 文字列結合1()
  Dim a As Integer
  Dim na1, na2 As String
   For a = 2 To Range("A" & Rows.Count).End(xlUp).Row
     Cells(a, 1).Value = na1
     Cells(a, 2).Value = na2
     Cells(a - 1, 4).Value = na1 & "-" & na2
   Next a
 End Sub

 Sub 文字列結合2()
  Dim a As Integer
   For a = 2 To Range("A" & Rows.Count).End(xlUp).Row
      Cells(a - 1, 4).Value = Cells(a, 1).Value & Cells(a, 2).Value
   Next a
  End Sub

WindowsXp(Proffesional) Excel2003


 こんな感じ?

 Sub 文字列結合1()
  Dim a As Integer
  Dim na1 As String, na2 As String
   For a = 2 To Range("A" & Rows.Count).End(xlUp).Row
     na1 = Cells(a, 1).Value
     na2 = Cells(a, 2).Value
     Cells(a - 1, 4).Value = na1 & "-" & na2
   Next a
 End Sub

 Sub 文字列結合2()
  Dim a As Integer
   For a = 2 To Range("A" & Rows.Count).End(xlUp).Row
      Cells(a - 1, 4).Value = Trim(Cells(a, 1).Value) & Trim(Cells(a, 2).Value)
   Next a
  End Sub

 (1or8)

 1or8さん、すばやいレスありがとうございます!
文字列結合1では変数記述の順序が逆だったのですね。逆だとこうも違うとは!
文字列結合2ではTrimという関数をすればいいのですね。
大変勉強になりました! m(__)m m(__)m m(__)m  (万年太郎)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.