2014-11-14 4 views
-1

나는 이것을 달성하기 위해 IF 문과 case 문을 수행하려고 시도했지만 아무 것도 원격으로 성공하지 못했습니다.형식 셀 범위 셀 값에 따라 특정 통화

기본적으로 나는 각 시트 내에서 통화 형식이어야하는 다른 명명 된 범위가있는 5 개의 탭 통합 문서가 있습니다.

그러나 첫 번째 탭의 셀 값 (예 : CAD, USD, NOK 등)을 기준으로 셀 범위의 통화 형식이 변경되어야합니다.

e.e. 탭 1의 셀 값이 CAD와 같으면 NOK "kr"등의 경우 USD가 여전히 "$"인 경우 탭 2-5의 모든 명명 된 범위는 "$"이어야합니다.

도움이 될 것입니다. 고맙다!

+0

데이터가 어떻게 보이는지 보여 줄 수 있습니까? 물론 샘플 데이터! –

+0

내 파일에 대한 링크를 여기에 첨부하고 있습니다. 내 파일을 직접 첨부 할 수있는 다른 방법이 있는지 알려주십시오. 기본적으로 첫 번째 탭에는 통화 선택이있는 드롭 다운 메뉴가 있으며 NAME1 및 NAME2 명명 된 범위는 해당 통화로 변경되어야합니다. https://drive.google.com/file/d/0B1mb0wVkbQcUdm42ZHVZNVFsVzQ/view?usp=sharing – user979226

답변

0

기록 매크로

Selection.NumberFormat = "[$kr-414] #,##0.00" 

당신은 대신 다수의 Case Select 사용을 고려할 수 If

+0

녹음 매크로가 통화 포맷을 보여주기 위해 실제로 작동한다고 생각하지 않았습니다 ... 저를 살펴 봅시다. 너 너무 많이! – user979226

0

당신은이 코드를 넣을 수 있습니다 .. 통화 형식 구문을 얻고 즉, 당신의 IF 문에 추가 Tab1의 시트 코드. A1 셀 변경 값은 필요한 시트의 테이블을 트리거합니다.

Option Explicit 

Private Sub Worksheet_SelectionChange(ByVal Target As Range) 

Select Case Range("A1").Value 
     Case "CAD" 
     Worksheets("Sheet2").Range("Table1").NumberFormat = "#,##0.00 [$CAD]" 
     Worksheets("Sheet3").Range("Table2").NumberFormat = "#,##0.00 [$CAD]" 
     Worksheets("Sheet4").Range("Table3").NumberFormat = "#,##0.00 [$CAD]" 
    Case "USD" 
     Worksheets("Sheet2").Range("Table1").NumberFormat = "#,##0.00 [$USD]" 
     Worksheets("Sheet3").Range("Table2").NumberFormat = "#,##0.00 [$USD]" 
     Worksheets("Sheet4").Range("Table3").NumberFormat = "#,##0.00 [$USD]" 
    Case "NOK" 
     Worksheets("Sheet2").Range("Table1").NumberFormat = "#,##0.00 [$NOK]" 
     Worksheets("Sheet3").Range("Table2").NumberFormat = "#,##0.00 [$NOK]" 
     Worksheets("Sheet4").Range("Table3").NumberFormat = "#,##0.00 [$NOK]" 
    End Select 

End Sub 
+0

지금 해보겠습니다. 고마워요! – user979226

+0

시도해 보셨습니까? – Golemic