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

VBAはまったく初めてです。
早急に作業を行わなければいけないことがでてきたのですが、持ち時間がないので、VBAでできないものかと思いました。
マクロの記録をやってみたのですが、うまくいきません。
記述をする場所はわかります。

毎27行目以降3行を削除していきたいのです。
どう記述していけばいいのか、どなたか教えていただけないでしょうか?

A 回答 (2件)

以下のようにすればいいかと思います。

なお、最初の削除する行が下の記述では28~30になっています『Rows("28:30")』ので、その部分は場合によって変更する必要があります。式の意味はみればわかるかと思いますが・・・。


Sub Macro1()
'
FOR i=0 to 200
  Rows("28:30").OFFSET(i*27,0).Select
Selection.Delete Shift:=xlUp
NEXT i

End Sub
    • good
    • 0
この回答へのお礼

大変たすかりました!

このまま、コピーしてやったら、思った通りのことができました。
本当にありがとうございました。

お礼日時:2008/06/01 15:12

こんにちは。



(1)シートに列追加を行う
(2)削除対象行の列にマーキング (例えば * を設定)
(3)データフィルタ(オートフィルタ)で削除対象行を選択

(2)は、Excel VBA を使わなくともセル計算式で実現可です。ご参考までに。

((2)の例)

A1 に =ROW()
B1 に =MOD(ROW()-1,30)
C1 に =IF((B1-26)>0, "*", "")

を設定し、2行目以降も数式をペーストする。そうすると 28, 29, 30 行のみ * がマーキングされる。

A B C
 :
26 25
27 26
28 27 *
29 28 *
30 29 *
31 0
32 1
 :
    • good
    • 0
この回答へのお礼

回答をくださってありがとうございました。

先に回答していただいていたjo-zenさんの方法で無事に作業を終えることができました。

iriyakさんの方法も考えられるのですね。使いようなのですね。
以後、参考にさせていただきます。

本当にありがとうございました。

お礼日時:2008/06/01 15:20

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