문제

내 시트 중 하나의 셀 값을 부분적으로 기반으로 내 파일 이름을 저장하려고 합니다.다음 코드가 있습니다.

Sheets("Input").Range("F18").Value & " - " & Sheets("Input").Range("M13").Value

문제는 제목을 값이 아닌 백분율로 표시하거나 어떤 경우에는 값이 아닌 달러 금액으로 표시하기를 원한다는 것입니다.누군가 이것을 어떻게 설명할 수 있습니까?

감사해요!

도움이 되었습니까?

해결책

다음은 "Filename-50%-$23.xlsx"와 같은 이름으로 파일을 저장합니다.

지금은 다음과 같이 가정하고 있습니다. (제가 틀렸다면 댓글을 달아 알려주세요.)

  • 열려 있는 파일(워드 문서 또는 엑셀 시트?)을 저장하고 싶습니다.
  • 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이므로 액세스할 때 Excel에서 기본 숫자를 표시하는 것과 동일한 프로세스를 수행하면 됩니다. 백분율.

  1. 100으로 곱하기(0.5는 50이 됨)
  2. 숫자 뒤에 백분율 문자를 추가하세요.

    Sheets("Input").Cells(Row, Column).value * 100 & "%"
    

이제 표시되는 값이 변경되지 않으므로 통화가 더 간단해졌습니다. Char 통화에 추가하기만 하면 됩니다.

   "$" & Sheets("Input").Cells(row, column).value

이제 문서를 저장해 보겠습니다.어떤 종류의 문서를 저장하고 싶은지 모르기 때문에 활성 문서 저장을 예로 사용했습니다.파일 이름은 위치(saveToDirectory)와 위에서 구성한 실제 파일 이름의 조합입니다.참고로 나는 그것을 "파일 이름"이라고 불렀습니다(이것을 변수 문자열이나 원하는 대로 변경할 수 있습니다).마지막으로 Excel 문서의 경우 작업 부팅을 저장할 때 다양한 옵션이 있습니다. 저는 사용자 기본 유형을 사용하기로 선택했습니다. 여기에서 Excel 문서를 저장하기 위한 파일 형식을 확인하세요.

  ActiveWorkbook.SaveAs Filename:=SaveToDirectory & "FileName-" & Cells(18, 6).Value * 100 & "%-$" & Cells(13, 13).Value, FileFormat:=xlWorkbookDefault

업데이트

Format을 사용하여 통화 숫자에 쉼표를 포함하는 매우 간단한 방법을 찾았습니다.

      Format(value, #,###.##)

또는

      Format(value, "Standard")

또는 (이 버전을 사용하는 경우 문자열에서 $ 기호를 생략할 수 있습니다)

      Format(value, "Currency") 

이 방법은 백분율 값에도 사용할 수 있습니다. (이 방법을 사용하면 문자열에서 % 기호를 생략할 수도 있습니다.)

      Format(Value, "Percent")

포맷 기능 안내보다

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top