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

データはE6からE297まであります。
E7のデータをD6へ、E9のデータをD8へ下に、これを最後まで行いたいのです。
ドラッグアンドドロップや切り取り、貼り付け(ショートカット)では時間がかかるので何かいい方法はありませんでしょうか?(マクロなのかな?)

また、E列だけでなく他の列(任意)へ移動したときや、E17などのように任意から始まるときなど、そしてEデータが297ではなくもっと増えたときなどの対応などをあわせてお教えいただくとうれしいです。
よろしくお願いします。

A 回答 (2件)

D6セルに


 =IF(E7="","",E7)
と入力して下方向にコピーする方法ではいけませんか?

行削除をする可能性があるなら以下の式の方が良いかもしれません。
 =IF(OFFSET(D6,1,-1)="","",OFFSET(D6,1,-1))

列の挿入や削除で列が変わっても問題なく表示できます
    • good
    • 0
この回答へのお礼

ありがとうございます。
E列は空白はないのでIF文は使わずに使用しました。
=OFFSET(D6,1,1)
でできました。
ありがとうございました。

お礼日時:2007/03/25 12:43

E6からE297まであるデータのうち、奇数行のデータをD列の一つ上のセルに移動させるということでしょうか?



Sub test01()
With ActiveSheet
For i = 6 To 297
If i Mod 2 <> 0 Then
.Cells(i - 1, "D") = .Cells(i, "E")
.Cells(i, "E").ClearContents
End If
Next
End With
End Sub
    • good
    • 0
この回答へのお礼

>E6からE297まであるデータのうち、奇数行のデータをD列の一つ上のセルに移動させるということでしょうか?
そうです。

マクロではこう組むのですね。
使ってみたいと思います。
ありがとうございました。

お礼日時:2007/03/25 12:45

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