|
▼Hirofumi さん:
こんにちは。
ありがとうございます。
>簡単なテストデータを作って試した所、幾つか気に成る所が出て来たのでレスします
>
>1、Sheet4のA列に日付がシリアル値で入って居るか否か?
> シリアル値の場合、私のコードもにぃさんのコードも日付の抽出は出来ないようです
> 因って、細工が必要と思われます
シリアル値ではなく、8桁の数値です。 20090424
>2、私のコードの場合、Sheet3に対しての出力を配列変数を使って行って居ますので
> Sheet3のA〜X列に算式が設定されている場合、これを消してしまいますので
> コードの変更が必要に成ります
Sheet3のA〜X列 の列見出し(文字列)以降のセルは空白です。
以降は月次で転記(設定)されていく値のみになります。
>
>にぃさんのコードに就いて名のですが
>
>1、前回のレスに書いた「 i = NewRow」は「NewRow = i」の間違いの様です
>2、Sheet4のListは、日付列(A列)で整列されている事が条件の様です
>3、出力されるSheet3では、A列が既に埋まって居て、そのA3〜最終行までの間で
> 空行をを探しその位置から転記を始める様に成って居ますので
> A3以降のセルにに何も入って居ない場合、"入力シートに設定できる行がありません。"が
> でて終了してしまいます
> Testするなら、例えばA200ぐらいに位置に例えば「ListEnd」とでも入れて試して見たら善いと思います
ありがとうございます。早速試してみます。
先日も、NewRow = i で試したりしてみたんですが、状況が変わらず、
NewRow = i のところを、LastRow3 = LastRow3 とか + 1 にしてみたり
LastRow3 = .Range("A" & .Rows.Count).End(xlUp).Row
↓
LastRow3 = Ws3.Range("A" & Ws3.Rows.Count).End(xlUp).Row の様に
他の行にも全てに追記し、
'転記操作
Sheet3.Range("A" & NewRow).Value = .Range("A" & I).Value
↓
Sheet3.Range("A" & LastRow3).Value = .Range("A" & I).Value
に変更してみたり。
結果としては、転記(設定)出来たんですが、Sheet4 はそのまま残ってました。と言うか
転記終了後の↓の部分でエラーで止まってしまいました。
If Me.TextBox1.Text <> v4(I + 1, 1) Then
にぃ さん と Hirofumi さん に書いて頂いたコードを無駄にしない様になんとか
完成させたいと思っています。
途中、また質問させて頂く事もあると思いますが、宜しくお願いします。
また、お気付きの点がありましたら、宜しくお願い致します。
|
|