Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7035 / 76732 ←次へ | 前へ→

【75289】Re:プロセージャの作成をお願いいたします
発言  kanabun  - 14/2/3(月) 19:01 -

引用なし
パスワード
   ▼本山中 さん:

>実行してみたのですが、最初の行(A1,B1,C1,D1の行)だけが
>ダブって残ります。後はうまくいきます。

フィルタをかけるとき、一行目は列見出しと仮定されます。だから、
たとえ一行目が実際はデータだったとしても、Excelは頓着しません。
一行目が見出しでないなら、マクロで見出し行を挿入してやりましょう。

それから、上のマクロ、標準モジュールに置いて実行してみたようですが、
B列をダブルクリックすれば、自動で重複カット・マクロが走るように、
改良してみましょう。

シート見出しを右クリックしてそこの「シートの表示」メニューを選択する
と、シートモジュールが現れます。
そこに、以下をコピーしてください。

'-----------------------------------------------------------
Option Explicit

Private Sub Worksheet_BeforeDoubleClick( _
        ByVal Target As Range, Cancel As Boolean)
 If Target.Column = 2 Then
  Cancel = True
  Rows(1).Insert
  Range("A1:D1").Value = Split("A B C D")
  With Range("A1").CurrentRegion
    .Columns("B").AdvancedFilter xlFilterInPlace, Unique:=True
    .Copy Range("E1")
    .Worksheet.ShowAllData
    .EntireColumn.Delete
  End With
  With Range("A1").CurrentRegion
    .Sort Key1:=.Columns("B"), Header:=xlYes
  End With
  Rows(1).Delete
 End If

End Sub

0 hits

【75285】プロセージャの作成をお願いいたします 本山中 14/2/3(月) 9:34 質問
【75286】Re:プロセージャの作成をお願いいたします kanabun 14/2/3(月) 14:59 発言
【75288】Re:プロセージャの作成をお願いいたします 本山中 14/2/3(月) 17:33 質問
【75289】Re:プロセージャの作成をお願いいたします kanabun 14/2/3(月) 19:01 発言
【75290】Re:プロセージャの作成をお願いいたします kanabun 14/2/3(月) 19:03 発言
【75291】Re:プロセージャの作成をお願いいたします kanabun 14/2/3(月) 19:43 発言
【75293】Re:プロセージャの作成をお願いいたします 本山中 14/2/4(火) 8:40 お礼

7035 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free