TOP > Up > Today

Excel マクロに関しての質問です


Date:  Mon, 12 Dec 2005 13:54:37 +0900
From:  no@ann.co.jp
Subject:  [pasml 159598] Excel マクロに関しての質問です
To:  pasml@ann.co.jp
Message-Id:  <200512120454.jBC4sb927696@ns.pas2.jp>
X-Mail-Count: 159598

お名前   : けんけん 困りごと掲示板から
URL      : 
質問URL: http://pasokoma.jp/?num=313118&ope=v
ツリー: http://pasokoma.jp/cgi/tree.cgi?num=313118
--
メーカー名:富士通 
OS名:WindowsXp 
パソコン名:MG50J
--
sheet1にある各セルのTextをsheet(&quot;DATA&quot;)に上から順番に記録させたいのですが、
例)
  (&quot;sheet1&quot;)シート
セル k5が1000
   D7が500 といったように沢山Textデーターがあるのですが、それを
    ↓
  (&quot;DATA&quot;)シート
のA3のシートから順番に
A3 は 1000
B3 は 500
で、しかも次にこのマクロを使うときは最終行を取得して
  (&quot;DATA&quot;)シート
A4 は 1000
B4 は 500
の様に記録して行きたいのですが、どうしたら良いでしょうか?
------
以前この掲示版でユーザーフォーム形式で教えて頂いたときは下記のような
プログラムを教えて頂いたのですが、今回のパターンはどうすればよいのでしょうか?
Option Explicit
Private wksList As Worksheet
Private vntPos As Variant
Private lngRow As Long
Private Sub UserForm_Initialize()
  vntPos = Array(&quot;K5&quot;, &quot;D7&quot;, &quot;F7&quot;, &quot;F4&quot;, &quot;H4&quot;, &quot;F5&quot;,・・・・・・)  
 
  Set wksList = Workbooks(&quot;club ARK.xls&quot;).Worksheets(&quot;DATA&quot;)
  With wksList
    '伝票一覧の最終行を取得
    lngRow = .Range(&quot;A65536&quot;).End(xlUp).Row
    '最終行が3未満なら
    If lngRow &lt; 3 Then
      lngRow = 3
    '最終行が3以上なら+1
    Else
      lngRow = lngRow + 1
    End If
  End With
  
End Sub
Private Sub UserForm_Terminate()
  Set wksList = Nothing
 
End Sub
Sub OkBtn()
  Dim i As Long
 
  With Sheet1
    'データ位置全てに就いて繰り返し
    For i = 0 To UBound(vntPos)
      'データ位置のデータを順番に転記
      wksList.Cells(lngRow, i + 1).Value = .Range(vntPos(i)).Value
    Next i
  End With
 
  '書き込み行を更新
  lngRow = lngRow + 1
  
  Workbooks(&quot;club ARK.xls&quot;).Save
 
End Sub
-------------
大変お手数をお掛けしますが、どなたか親切な方助けて下さい。宜しくお願い致します。
--
== 掲示板URL: http://pasokoma.jp/ ==
   配信の停止: http://pasokoma.jp/taikai.shtml
   本メールマガジンへの返信はなさらないで下さい
== 投稿はパソコン困りごと掲示板でお願い致します ===
    


TOP > Up > Today