質問
私のシートの1つのセル値に部分的に私のファイルの名前を保存しようとしています。次のコードがあります。
Sheets("Input").Range("F18").Value & " - " & Sheets("Input").Range("M13").Value
.
問題は、タイトルが値として、またはその場合は1ドルの額として表示されることをお勧めします。誰かがこれをどのように説明するか?
ありがとう!
解決
次に、「filename-50% - $ 23.xlsx」
などの名前のファイルを保存します。今のところ私は次のことを想定しています(私が間違っている場合はコメントして私に知らせてください)
- 開いているファイルを保存したい(Word DocまたはExcelシート)
- F18とM13 の値に基づいてそのファイルに名前を付ける必要があります。
- 値はドル のパーセントまたはコストのいずれかです。
- F18は常にパーセンテージになり、M13は常にドルにあります
- セルに入力された値は数値だけであり、セルは%または通貨にフォーマットされています。
(将来的には、あなたがもう少しあなたの問題をもう少し寝かせ、これまでに試したものを含む)
Sub testSave()
Dim SaveToDirectory As String
'just checking string looks good comment or delete when happy
MsgBox ("other text you want " & Cells(18, 6).Value * 100 & "%-$" & Format(Cells(13, 13).Value, "#,###.##"))
'set save directory
SaveToDirectory = "C:\Users\DMASON2\Documents\"
'set file name
ActiveWorkbook.SaveAs Filename:=SaveToDirectory & "FileName-" & Cells(18, 6).Value * 100 & "%-$" & Format(Cells(13, 13).Value, "#,#*.##"), FileFormat:=xlWorkbookDefault
End Sub
.
今私がしたことを説明する。
セルをパーセント値にフォーマットして0.5 Excelに入力すると、それを自動的に50%に変更しますが、セル値はまだ0.5です。パーセンテージとしての数。
- 倍数(0.5になる)
-
番号
の後にcharのパーセントで追加Sheets("Input").Cells(Row, Column).value * 100 & "%"
今すぐ通貨は、変更されない値が変更されないため、通貨文字
に追加するだけです。 "$" & Sheets("Input").Cells(row, column).value
.
これで文書を保存するため。私はあなたがどのような文書を保存したいのかわからないので、私はアクティブなものを例として保存するだけです。ファイル名は、位置(SaveToDirectory)と上で構築した実際のファイル名の組み合わせです。注意: "filename"と呼びました(これを変数文字列または必要なものに変更できます)。 ExcelドキュメントのFinalyワークブートを保存したばかりのさまざまなオプションがあり、ユーザーのデフォルトタイプを使用することを選択しました。 ここでExcelドキュメントを保存するためのファイルの種類を参照/ a>
ActiveWorkbook.SaveAs Filename:=SaveToDirectory & "FileName-" & Cells(18, 6).Value * 100 & "%-$" & Cells(13, 13).Value, FileFormat:=xlWorkbookDefault
.
フォーマットを使用して通貨番号にコンマを含める非常に簡単な方法を見つけました
Format(value, #,###.##)
.
Format(value, "Standard")
.
または(このバージョンを使用する場合は、文字列から$ SIGNALを省略できます)
Format(value, "Currency")
.
このメソッドはパーセント値にも使用できます(再びこのメソッドを使用して文字列IN文字列を省略することができます)
Format(Value, "Percent")
.
を参照してください