[[20190113095240]] 『VBA実行後の選択処理』(狭山) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『VBA実行後の選択処理』(狭山)

お世話になります。

A5:C1000を選択してDeleteするマクロの記録をしたのですが
実行後に 選択された状態を無くすにはどうしたら消えるのでしょうか
ご教授をお願いいたします。

Sub Macro1()

    If MsgBox("実行する場合はOK、間違ってこのボタンをクリックした場合はキャンセルをクリックしてください。", vbOKCancel) = vbCancel Then
        End
    End If
 'この後に実行するマクロ文を入れてください
  Range("A5:C1000").Select
    Selection.ClearContents
 End Sub

< 使用 Excel:Excel2013、使用 OS:Windows7 >


 Range("A5:C1000").Select
 Selection.ClearContents

      ↓

 Range("A5:C1000").ClearContents
(bi) 2019/01/13(日) 10:04

(bi)様
早速ありがとうございます。
出来ました。
今後もよろしくお願いいたします。

Sub Macro1()

    If MsgBox("実行する場合はOK、間違ってこのボタンをクリックした場合はキャンセルをクリックしてください。", vbOKCancel) = vbCancel Then
        End
    End If
    Range("A5:C1000").ClearContents
 End Sub

(狭山) 2019/01/13(日) 10:13


もう一つ教えて下さい。

以前のサイト
http://www.excel.studio-kazu.jp/kw/20180813102103.html
ものな2 様に教えていただきました
ファイル名を変更のテンプレートを使用しているのですが
http://excel-macro.com/change_filename/

作業を行い最後に保存しますとデスクトップ上に真っ白いファイルが一瞬出て
消えます。その際ファイル名みたいな番号が毎回出て消えるのですが
何か問題があるのでしょうか
ご教授をお願いいたします。

モジュール1に

Option Explicit

'ファイル名取得
Sub Getfn()

  Dim dlg As FileDialog
  Dim fol_path As String  'フォルダのフルパス
  Dim f_name As String  'ファイル名
  Dim i As Long  'ファイル名を出力する行番号
  Dim Title As String

  'データクリア
  Range("A5:C5").Select
  Range(Selection, Selection.End(xlDown)).Select
  Selection.ClearContents
  Range("A2").ClearContents
  Range("A1").Select

  'ダイアログでフォルダ選択
  With Application.FileDialog(msoFileDialogFolderPicker)
    Title = "CSVファイルの保存フォルダを選択して下さい"
    If .Show = False Then Exit Sub
    fol_path = .SelectedItems(1)
  End With

  Range("A2") = fol_path 'パスを出力

  f_name = Dir(fol_path & "\*")  'フォルダ内の一つ目のファイル名を取得
  If f_name = "" Then
    MsgBox fol_path & " にはファイルが存在しません。"
    Exit Sub
  End If

  'A5セルから下にファイル名を書き出し
  i = 5
  Do Until f_name = ""
    Cells(i, "A").Value = f_name
    i = i + 1
    '次のファイル名を取得
    f_name = Dir
  Loop

  MsgBox "ファイル名一覧を作成しました。"
End Sub

'ファイル名変更
Sub Changefn()

  Dim fp As String
  Dim i As Long
  Dim fo As String
  Dim fn As String

  '作業パス有無チェック
  If Range("A2") = "" Then
    MsgBox "フォルダパスが未入力です" & vbCrLf & "ファイル取得からやり直すか、または再度入力して下さい"
    Exit Sub
  End If

  'パスを変数に格納
  fp = Range("A2").Value & "\"

  On Error GoTo ERR_HANDL

  '5行目から最終行までループ処理を実行
  For i = 5 To Cells(Rows.Count, 1).End(xlUp).Row
    '現在のファイル名を取得
    fo = Cells(i, 1).Value
    '新しいファイル名を取得
    fn = Cells(i, 2).Value
    '新しいファイル名が入力されているときのみ処理を実行
    If fn <> "" Then
      '正常処理の実行結果を先に入力
      Cells(i, 3).Value = _
        "○ファイル名を" & _
        "「" & fo & "」から" & _
        "「" & fn & "」に変更しました。"
      'ファイル名を変更
      Name fp & fo As fp & fn
    End If
  Next i

  MsgBox "完了しました" & vbCrLf & "実行結果を確認してください"

  Exit Sub

ERR_HANDL:

  Cells(i, 3).Value = _
    "×" & Err.Description & ":" & Err.Number
  Resume Next

End Sub

モジュール2に
Sub Macro1()

    If MsgBox("実行する場合はOK、間違ってこのボタンをクリックした場合はキャンセルをクリックしてください。", vbOKCancel) = vbCancel Then
        End
    End If
    Range("A5:C1000").ClearContents
 End Sub

(狭山) 2019/01/13(日) 10:36


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.