アプリ版:「スタンプのみでお礼する」機能のリリースについて

先日、ご回答戴いたマクロです。重複データを削除して貼り付ける内容です。
しかしながら、どうしても思うようなデータになっていません。そこで、再度
お伺いしたくお聞きするところです。現在、sheet4の段階でsheet1・2のデータ
が全てsheet4に表示されてしまいます。原因がつかめないところです。以上のことを
前提にして、ご教授できませんでしょうか、よろしくお願い致します。

  sheetそれぞれの内容と処理したいこと

sheet1 A3:A500 対象となるデータ 
sheet2 A2:A100 対象となるデータ

sheet3 sheet1A2:A500 sheet2A501:A600
    sheet1とsheet2の合算されたもので、重複削除されたデータになる

sheet4 C2:C500 sheet3の重複データの削除されたものがsheet5に貼り付けられる
    このデータは、A列に入ったデータをC列に関数を使い一行空きのにするためC列にしている


sheet5 C3:C400  最終の完成データ 


  現在のマクロ

Sub sample()

e1 = Sheets("Sheet1").UsedRange.Row
e2 = Sheets("Sheet2").UsedRange.Row

Set sht1L = Sheets("Sheet1").Range("A1").SpecialCells(xlCellTypeLastCell)
Set sht2L = Sheets("Sheet2").Range("A1").SpecialCells(xlCellTypeLastCell)
Set sht4 = Sheets("Sheet4")
Set sht5 = Sheets("Sheet5")

saki = Range(Sheets("Sheet1").Range("A3"), sht1L).Value
atto = Range(Sheets("Sheet2").Range("A2"), sht2L).Value

sakiD = UBound(saki)
sakiR = UBound(saki, 2)
attoD = UBound(atto)
attoR = UBound(atto, 2)
migi = -(sakiR > attoR) * sakiD - (akiR <= attoR) * attoR

Range(sht4.Cells(3, 1), sht4.Cells(sakiD + 2, sakiR)).Value = _
saki

Range(sht4.Cells(sakiD + 3, 1), sht4.Cells(sakiD + 2 + attoD, attoR)).Value = _
atto

Range(sht4.Cells(3, 1), sht4.Cells(sakiD + 2 + attoD, migi)).RemoveDuplicates _
Columns:=1, Header:=xlNo

Range(sht5.Cells(3, 3), sht5.Cells(sakiD + 2 + attoD, 3)).Value = _
Range(sht4.Cells(3, 3), sht4.Cells(sakiD + 2 + attoD, 3)).Value

End Sub

A 回答 (1件)

14行目の『s』がひとつ欠落しているためでは?


修正前:migi = -(sakiR > attoR) * sakiD - (akiR <= attoR) * attoR
修正後:migi = -(sakiR > attoR) * sakiD - (sakiR <= attoR) * attoR
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!