2012-09-05 3 views
-1

excel table사용자 정의 함수를 능가하십시오

이 테이블에는 6K 개 이상의 행이 있습니다. 각 "A"열의 셀 에서 실행되고 "b"의 셀이 복사하는 것보다 굵은 경우, 인 경우 해당 셀을 복사하십시오.

인터넷에서이 함수를 구현했지만 VB를 사용하지 않고 이미 VB 함수 사용 방법을 알고있는 사람이 처음부터 배우는 것보다 Excel을 Excel에서 쉽게 사용할 수 있습니다.

이 코드는 G 열 셀을 숫자로 바꿉니다.

Sub BoldCells() 
Dim TheRange As Range 
Dim TheCell As Range 
Set TheRange = Range("G1", Range("G65536").End(xlUp)) 
For Each TheCell In TheRange 
If TheCell.Font.Bold = True Then 
TheCell = 7 
Else: TheCell = 0 
End If 
Next TheCell 
End Sub 

도움을 주시면 감사하겠습니다.

+0

예를 들어 A7과 A8 모두 "휴대 전화"값을 갖고 싶습니까? – yosukesabai

+0

예를 들어, 위의 표에서 : B1 == 텍스트가 A1 = B1보다 굵게 표시됩니다. B2 == A2 = A1보다 텍스트가 굵은 경우. –

+0

Hi Mitz, 어떤 Excel 버전을 사용하고 있습니까? 또한이 작업을 한 번만 반복해야합니까? 반복적으로 수행해야합니까? – PowerUser

답변

2

얼마나 효율적인지 모르겠지만 10 줄 정도의 데이터로 작업하는 것처럼 보입니다.

Sub test() 
    Dim rng As Range, str As String 
    Set rng = Range("b1") 
    str = "" 
    Do 
     If rng.Font.Bold Then 
      str = rng.Value 
     End If 
     rng.Offset(0, -1).Value = str 
     Set rng = rng.Offset(1, 0) 
    Loop Until IsEmpty(rng) 
End Sub 
관련 문제