私は私が私のワークブックに追加したいと思い、このサイト上のコードの逸品を見つけました:マクロとして表示されないサブを実行するにはどうすればよいですか?
Trim all cells within a workbook(VBA)
コードがある:
Sub DoTrim(Wb As Workbook)
Dim aCell As Range
Dim wsh As Worksheet
'~~> If you are using it in an Add-In, it is advisable
'~~> to keep the user posted :)
Application.StatusBar = "Processing Worksheets... Please do not disturb..."
DoEvents
Application.ScreenUpdating = False
For Each wsh In Wb.Worksheets
With wsh
Application.StatusBar = "Processing Worksheet " & _
.Name & ". Please do not disturb..."
DoEvents
For Each aCell In .UsedRange
If Not aCell.Value = "" And aCell.HasFormula = False Then
With aCell
.Value = Replace(.Value, Chr(160), "")
.Value = Application.WorksheetFunction.Clean(.Value)
.Value = Trim(.Value)
End With
End If
Next aCell
End With
Next wsh
Application.ScreenUpdating = True
Application.StatusBar = "Done"
End Sub
私はコピーして試してみましたこれをExcelモジュールに貼り付けますが、実行方法を理解することはできません。私はです。実際にはですので、これは愚かな質問であれば事前にお詫び申し上げます。 Subがマクロとして表示されない理由を調べたところ、変数が含まれているため、Subがマクロとして表示されない可能性があります。
元のポスターがアドインを修正しようとしていたことを認識しています。私はちょうどそこにワークブックでこれを呼び出す方法があると思っています。
ありがとうございます!
あなたは別の手順、例えばからそれを呼び出す必要がありますので、あなたのサブは、引数 'Wb'を持っています'DoTrim(Wb1)'ここで、wb1は呼び出しプロシージャで宣言され割り当てられたワークブック変数です。 – SJR