Excel VBA質問箱 IV

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

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


57543 / 76732 ←次へ | 前へ→

【23925】Re:名前を付けて保存
発言  kazu  - 05/4/7(木) 18:36 -

引用なし
パスワード
   こんな感じでどうでしょうか?


On Error GoTo errmsg
Dim Obj As Object
Dim myDir As String
Dim S As String

  AryNoUse = Array("\", "/", ":", ",", ";", "*", "Print", """", "<", ">", "|")

  Set Obj = CreateObject("Shell.Application"). _
  BrowseForFolder(0, "保存したいフォルダを選択して「OK」ボタンをクリックして下さい。", 0)

  If Obj Is Nothing Then Exit Sub

  myDir = Obj.Self.Path
  
  If Obj.Title = "マイ コンピュータ" Then
    MsgBox "マイコンピュータは選択しないで下さい。", vbExclamation
    Exit Sub
  End If
  
  UserForm1.Show


errmsg:

'-------------------------------------------------------------------------
  Fnm = UserForm1.TextBox1.Value
  If Fnm = "" Then
   MsgBox "ファイル名が指定されていません。"
   Exit Sub
  End If
  
  For Each Chk In AryNoUse
    If InStr(1, Fnm, Chk) <> 0 Then
      MsgBox "ファイル名に不適切な文字が含まれています。" & vbCrLf & "処理を中止します。", vbExclamation
      Exit Sub
    End If
  Next

   Application.DisplayAlerts = False
   S = myDir & "\" & Fnm & ".xls"
   If Dir(S) <> "" Then
     If MsgBox("既に存在します。上書きしますか", vbQuestion + vbYesNoCancel) = vbYes Then
      Kill S
     Else
      MsgBox "Noが選択されたので処理を中止します。"
      Exit Sub
     End If
   Else
     ActiveWorkbook.SaveAs myDir & "\" & UserForm1.TextBox1.Value & ".xls"
     Application.DisplayAlerts = True
     Application.Quit
   End If

0 hits

【23846】名前を付けて保存 yamazaki 05/4/5(火) 20:06 質問
【23848】Re:名前を付けて保存 おさる 05/4/5(火) 20:37 回答
【23849】Re:名前を付けて保存 おさる 05/4/5(火) 20:50 回答
【23851】Re:名前を付けて保存 おさる 05/4/5(火) 21:16 回答
【23897】Re:名前を付けて保存 yamazaki 05/4/6(水) 20:35 質問
【23925】Re:名前を付けて保存 kazu 05/4/7(木) 18:36 発言
【24041】Re:名前を付けて保存 yamazaki 05/4/10(日) 19:49 お礼

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