プロが教える店舗&オフィスのセキュリティ対策術

無知な私に教えて下さい

現在以下の内容で、名前と住所と電話番号が転記されるマクロを使用しています。
入力時は、ダイアログが表示されます。

 I列に名前
H列に住所
J列に電話番号

Private Sub AddButton_Click()
'住所録追加
Dim rowscount As Long

'行数獲得

rowscount = Range("住所録一覧").Rows.Count

'最下行追加

Range("住所録一覧").Cells(rowscount, 1).EntireRow.Insert

'データーセル入力
Range("住所録一覧").Cells(rowscount, 1) = Texts
Range("住所録一覧").Cells(rowscount, 2) = Textj
Range("住所録一覧").Cells(rowscount, 3) = Textt

Unload Me
End Sub

上記で出来たリストをデータ入力規則に下記式を入れリストとして使用しています。
=OFFSET(住所録,0,0,ROWS(住所録一覧)-1,1)


今困っているのが、削除する際に3セルを手動で削除しています。

希望は
名前の列を検索し(リスト選択)、住所と電話番号の3つのセルを削除し、上に行を詰めたいです。(msgboxで確認後)

リストは、”住所録一覧”と範囲に名前をつけています。
I列の名前の欄には、住所録と別の範囲の名前をつけてます。


リストから検索し、消していいかのダイアログ確認後、該当セル3つの列を削除し、上に行を詰める式をご教授下さいませ。

もう二日悩んでます。
宜しくお願い致します。

A 回答 (1件)

検索は Findを利用して



OfficeTANAKA
セルの操作(セルの検索)
http://officetanaka.net/excel/vba/cell/cell11.htm

行を削除して上に詰めるのは
Rows(findの結果の行).Delete Shift:=xlUp

などを利用すればいかがでしょう。
    • good
    • 0
この回答へのお礼

ありがとうございます。
試してみましたが、エラーになります。
検索しながら頑張ります。
また、心折れた時には今度は自分の考えた構文を載せてみます。
素早い回答ありがとう御座いまいた。

お礼日時:2014/04/25 09:14

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