[[20171002160013]] 『最終行取得について』(香) ページの最後に飛ぶ

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

 

『最終行取得について』(香)

VBAについての質問です。

現在下記のようなマクロを作成しているのですが、データ取得の部分で詰まってしましまいました。

Sheet1のA列のデータをコピー

Sheet2のA列に貼り付け(A1セルから)

Sheet2に張り付けたデータの重複を削除

こちらを行う際にSheet1のA2からデータを見るようにしているのですが、現在行おうとしているブック内のデータがA11から始まっているためうまくデータを取得できません。
こちらの事情で申し訳ないのですが、こちらのマクロは別のデータでも使用するためA11からという記述ができない状況です。

わかりづらい説明で申し訳ございません。
よろしくお願いいたします。

現在作成中のマクロ↓
Sub 重複削除()

    Dim j As Worksheet

    Set j = Worksheets("Sheet2")

    Worksheets("Sheet1").Range("A2").Select

    Range(Selection, Selection.End(xlDown)).Select

    Selection.Copy

    Sheets("Sheet2").Select

    Range("A1").Select

    ActiveSheet.Paste

    j.Range("A:A").RemoveDuplicates Columns:=1, Header:=xlNo

End Sub

< 使用 Excel:unknown、使用 OS:unknown >


    Dim LstRow1 As Long
    Dim LstRow2 As Long

    LstRow1 = Worksheets("Sheet1").Cells(Rows.Count, 1).End(xlUp).Row
    LstRow2 = Worksheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Row

    Worksheets("Sheet1").Range("A2:A" & LstRow1).Copy
    Worksheets("Sheet2").Range("A" & LstRow2).Offset(1, 0).PasteSpecial xlPasteAll

(++) 2017/10/02(月) 16:34


  Dim i As Double, j As Double   
    i = 1

    Do Until Cells(i, 1) = ""
        j = i + 1

        Do Until Cells(j, 1) = ""
            If Cells(i, 1) = Cells(j, 1) Then
                Rows(j).Delete
                j = j - 1 
            End If
            j = j + 1  
        Loop

        i = i + 1
    Loop

(++) 2017/10/02(月) 16:35


A11でしたね

  Dim LstRow1 As Long

    Dim LstRow2 As Long
    LstRow1 = Worksheets("Sheet1").Cells(Rows.Count, 1).End(xlUp).Row
    LstRow2 = Worksheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Row
    Worksheets("Sheet1").Range("A11:A" & LstRow1).Copy
    Worksheets("Sheet2").Range("A" & LstRow2).Offset(1, 0).PasteSpecial xlPasteAll
(++) 2017/10/02(月) 16:37

A1からだったのね

Worksheets("Sheet2").Range("A" & LstRow2).PasteSpecial xlPasteAll
(++) 2017/10/02(月) 16:47


Worksheets("Sheet2").Range("A1").PasteSpecial xlPasteAll

(++) 2017/10/02(月) 16:48


 (香)さん
 >こちらを行う際にSheet1のA2からデータを見るようにしているのですが、現在行おうとしているブック内のデ
 >ータがA11から始まっているためうまくデータを取得できません。 
 >こちらの事情で申し訳ないのですが、こちらのマクロは別のデータでも使用するためA11からという記述ができ
 >ない状況です。 

 先頭行は何が条件になりますか?
(seiya) 2017/10/02(月) 16:56

   Worksheets("Sheet1").Range("A2").Select

   Worksheets("Sheet1").Range("A11").Select
(++) 2017/10/02(月) 17:01

Sub test()
    Dim LstRow1 As Long
    LstRow1 = Worksheets("Sheet1").Cells(Rows.Count, 1).End(xlUp).Row
    Worksheets("Sheet1").Range("A11:A" & LstRow1).Copy Worksheets("Sheet2").Range("A1")
    Sheets("Sheet2").Range("A1").CurrentRegion.RemoveDuplicates Columns:=(1)
End Sub
(++) 2017/10/02(月) 17:41

 こんばんわ。

 今回はa11からデータと言う事ですけど、a10より上にはコピペしたくない
 文字とかはあるんですか?

 無ければ列全体をコピペして、ジャンプ機能で空白セルを削除して上詰め、
 重複の削除の手順で出来そうですね。

(sy) 2017/10/02(月) 19:12


コメント返信:

[ 一覧(最新更新順) ]


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