見出し画像

020_質問:【自己責任】質問者、互換性チェックのメッセージが嫌いすぎるため、さらに改良版のマクロを二つ作ってもらう

 ストレスフルマックス状態な質問者。
 今日は、ぼんっと投げやりに質問します。

【追記・結論】
 わたしの望むマクロはできませんでした。
 AIはマイクロソフトの味方でした。下のマクロのコードは悪い例として記憶にとどめてくだされば幸いです。

 今回の質問形式
 日本語で質問しますので、以下の形式で回答してください。
1.【今回の質問・またはお願い】

マクロを二つ作ってください。

1つめ
Excelファイルがたくさん入っているフォルダがあります。
そのフォルダに入っているExcelファイルをすべて.xlsxから.xlsに別名保存にして、互換性チェックのメッセージが出たら、チェックボックスにチェックを外して続行ボタンを押してください。

2つめ
その上でさらにフォルダに入っているエクセルファイルすべてにパスワードをかけるマクロを作ってください。

2.【質問の英訳】
3.【英訳に対する英語の回答】
4.【英語の回答の日本語訳】

AI回答
【今回の質問・またはお願い】
マクロを2つ作成してください。
1つ目:
あるフォルダに複数のExcelファイルがあります。
すべてのExcelファイルを.xlsxから.xlsに別名保存し、互換性チェックのメッセージが表示された場合は、チェックボックスを外して続行ボタンを押してください。

2つ目:
上記の操作を行った後、そのフォルダ内のすべてのExcelファイルにパスワードを設定するマクロを作成してください。

【質問の英訳】

Please create two macros.

First Macro:
There is a folder that contains multiple Excel files.
Please save all Excel files with .xlsx extension as .xls extension, and if a compatibility check message is displayed, uncheck the checkbox and click the continue button.

Second Macro:
After performing the above operation, please create a macro to set a password for all Excel files in that folder.

【英訳に対する英語の回答】

Sure, here are the two macros:

First Macro:

Sub ConvertFormat()
Dim sFolder As String, sFileName As String
sFolder = "C:\Users\Username\FolderName\" 'Replace with the folder path
sFileName = Dir(sFolder & "*.xlsx")
Do While sFileName <> ""
    Workbooks.Open sFolder & sFileName
    ActiveWorkbook.SaveAs sFolder & Replace(sFileName, ".xlsx", ".xls"), FileFormat:=xlExcel8, Password:="password"
    Application.DisplayAlerts = False
    On Error Resume Next
    ActiveWorkbook.CheckCompatibility = False
    Application.DisplayAlerts = True
    ActiveWorkbook.Close SaveChanges:=True
    sFileName = Dir
Loop
End Sub

Second Macro:

Sub SetPassword()
Dim sFolder As String, sFileName As String
sFolder = "C:\Users\Username\FolderName\" 'Replace with the folder path
sFileName = Dir(sFolder & "*.xls")
Do While sFileName <> ""
    Workbooks.Open sFolder & sFileName, Password:="password"
    ActiveWorkbook.SaveAs sFolder & sFileName, Password:="password", ReadOnlyRecommended:=False
    ActiveWorkbook.Close SaveChanges:=True
    sFileName = Dir
Loop
End Sub

Please replace "C:\Users\Username\FolderName" with the actual folder path where your Excel files are located, and modify "password" to the password you want to set.

【英語の回答の日本語訳】

はい、以下が2つのマクロです。

1つ目のマクロ:
複数のExcelファイルが含まれるフォルダがあります。
すべてのExcelファイルを.xlsx拡張子から.xls拡張子に別名保存し、互換性チェックメッセージが表示された場合は、チェックボックスを外して続行ボタンをクリックしてください。

2つ目のマクロ:
上記の操作を実行した後、そのフォルダ内のすべてのExcelファイルにパスワードを

……あれ、挙動がおかしい。コードを書きだすのではなく、私の指示の方を書きだしている。

いきなりコードを書きだし始めて驚きました。
とりあえず、待ったをかけます。
AIはなんと答えたかったのだろうか。
タイミングがタイミングだけに、もやもやする。

 

この記事が気に入ったらサポートをしてみませんか?