戻る  □一般操作のサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 最新記事及び返信フォームをトピックトップへ ]
このトピック参照回数 :
他で開かれたエクセルファイル名の自動指定について

    [191403] 他で開かれたエクセルファイル名の自動指定について-

    ■親トピック/記事引用/メール受信=OFF■

    □投稿者/ VBA初心者 -(2020/02/18(20:04))
    □U R L/
      他の人が作成しているエクセルアプリでエクセルファイルが新規作成されるのですが、
      メモリー上に作られたファイル名は Book1、Book2、Book3、Book4、・・・Book99のいずれかで
      Bookの後に任意の番号が付けられています。
      (どの番号になるかはわかりません)
      
      そのため、現状は その番号を見てから
      私が作成したエクセルに切り替えVBAを使用してその番号を入力して
      当該エクセルファイルをアクティブにした後に
      そのファイル名を a  に変更して一旦保存しています。
      
      
      Dim no As String
      no = Application.InputBox("Book後の値を入力")
      Windows("Book" & no).Activate
      
      chDir "\・・・・Documents"
      ActiveWorkbook.SaveAs Filename:= "\・・・\a.xls"
      ・
      ・
      そこで、Bookの後の番号を見なくても(インプットボックスで入力しなくても良いように)
      新規で作成された Book? の名前を そのまま a というファイル名に変更保存するには、
      上のコードをどのように変更したら良いでしょうか?
      
      どなたかご教示いただけますと幸いです。


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [191404] Re[1]: 他で開かれたエクセルファイル名の自動指定について-

    記事引用/メール受信=OFF■

    □投稿者/ マナ -(2020/02/18(20:37))
    □U R L/

      開いているBookの名前を全部調べてはどうでしょうか。




    [191406] Re[2]: 他で開かれたエクセルファイル名の自動指定について-

    記事引用/メール受信=OFF■

    □投稿者/ VBA�ス�ス�スS�ス�ス -(2020/02/18(21:17))
    □U R L/

      マナ さん、ありがとうございます。

      > 開いているBookの名前を全部調べてはどうでしょうか。

      1から99まで一致しているか順に調べれば、
      出来そうですね。
      ちょっと、考えてみます。




    [191407] Re[3]: 他で開かれたエクセルファイル名の自動指定について-

    記事引用/メール受信=OFF■

    □投稿者/ マナ -(2020/02/18(21:23))
    □U R L/

      Like演算子で検索してみてください




    [191408] Re[3]: 他で開かれたエクセルファイル名の自動指定について-

    記事引用/メール受信=OFF■

    □投稿者/ 28C0 -(2020/02/18(21:23))
    □U R L/
      Dim wb as workbook
      Dim S_FilePath as string
      
      S_FilePath = 保存先のパス
      
      For Each wb in workbook
        IF wb.name Like "Book*" then
           wb.saveas S_FilePath & "a"
        end if
      next
      
      開いてるBookの名前みて「Bookほにゃらら〜」だったら
      保存先のパスにaって名前で保存って感じ
      
      個人的には複数新規作成されてた場合対応できないので
      Dim tempCount as long
      Dim wb as workbook
      Dim S_FilePath as string
      
      S_FilePath = 保存先のパス
      
      For Each wb in workbook
        IF wb.name Like "Book*" then
           wb.saveas S_FilePath & "a" & tempCount
           tempCount = tempCount +1
        end if
      next
      
      とかで保存時の名前が被らないようにするかな


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [191409] Re[4]: 他で開かれたエクセルファイル名の自動指定について-

    記事引用/メール受信=OFF■

    □投稿者/ VBA初心者 -(2020/02/18(21:37))
    □U R L/

      28C0 さん、

      コードまで作成いただき、ありがとうございます。

      明日会社でやってみます。
      その後、ご連絡いたします。
      大変お世話になりました。




    [191410] Re[5]: 他で開かれたエクセルファイル名の自動指定について-

    記事引用/メール受信=OFF■

    □投稿者/ 28C0 -(2020/02/18(21:57))
    □U R L/
      偉そうに書いておいてすみません
      ちょいちょい脱字が…
      
      言い訳ですが手元にExcelをはじめOffice製品がないので入力補完の部分があいまいです。申し訳ない
      明日会社で動かす際は
      
      S_FilePath = "保存先のパス" ←ここは任意のPathに書き換えてください
      
      For Each wb in Workbook   ←正しくはWorkbooks(sが抜けてますのでご注意を)
      
      wb.saveas S_FilePath & "a" & tempCount ←拡張子付けてないので.xlsとか拡張子を追加してください


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [191411] Re[6]: 他で開かれたエクセルファイル名の自動指定について-

    記事引用/メール受信=OFF■

    □投稿者/ チオチモリン -(2020/02/19(00:48))
    □U R L/
      未保存のブックだろうから ↓ でもいいかもしれない。
      
          Dim WB As Workbook
          For Each WB In Workbooks
              If WB.Path = "" Then
                  WB.Activate
                  ChDir "\・・・・Documents"
                  ActiveWorkbook.SaveAs Filename:="\・・・\a.xls", FileFormat:=xlExcel8
                  Exit For
              End If
          Next
      


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [191416] Re[7]: 他で開かれたエクセルファイル名の自動指定について-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ VBA初心者 -(2020/02/19(19:44))
    □U R L/

      28C0 さん、
      いただいたコードで上手くできました。
      ありがとうございました。

      チオチモリン さんのコードも大変参考になります。
      ありがとうございます。

      大変お世話になりました。



このトピック内容の全ページ数 / [0]

このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 


- Child Forum -
Edit:ゆう-G