2016-07-18 2 views
2

캡션의 높이가 전체 캡션을 표시하는 데 충분한 지 알 수있는 방법이 있는지 알고 싶습니다. 예를 들어 위의 그림에서워크 시트 확인란의 높이가 캡션에 충분한 지 확인하는 중

enter image description here

, 모두 체크 박스는 동일한 텍스트했으나 왼쪽에 하나의 높이가 단순히 전체 캡션을 표시하기에 충분하지 않았다 있습니다. VBA로이를 확인하는 방법이 있습니까?

높이를 Feuil1.CheckBoxes("chbx_1").height으로 확인하고 Feuil1.CheckBoxes("chbx_1").caption 캡션을 변경할 수 있지만 캡션이 표시되고 있음을 알 수 없습니다.

참고; 이 ActiveX 확인란이 아니므로 하나를 사용하지 않으려합니다. 또한 양식을 사용하고 싶지 않습니다.

+2

과거에는 이것이 불가능하다는 것을 알았지 만 숨겨진 레이블에 대문자로 된 o를 충분히 사용하는 문자를 사용하고이 높이를 사용하십시오. 그렇다면 a.height

+0

@ Nathan_Sav 나는 리조트에 가지 않기를 바랬지 만해야만하면 할거야. –

답변

0

나는 고칠 수는 있지만, 확실히 보여줄 수있는 확실한 방법은 모르겠다.

워크 시트에서도 작동 할 수있는 UserForms에 구현 한 방법을 제안합니다. 이 방법은 사용 가능한 화면 공간을 최대화하기 위해 컨트롤의 동적 크기 조정을 필요로합니다.이 방법은 다양한 화면 크기와 Mac/PC 차이점을 처리 할 때 유용합니다.

은 콘텐츠에 대한 작업을 아래의 적응 고려 : - VBA를에 배치 된
Private Sub Workbook_SheetActivate(ByVal Sh As Object) 
If Sh.Name = "Feuil1" Then FormatForm 
End Sub 

Private Sub FormatForm() 
Dim WkSht As Worksheet 
Set WkSht = ThisWorkbook.Worksheets("Feuil1") 
    WkSht.CheckBoxes(1).Top = WkSht.Range("B2").Top 
    WkSht.CheckBoxes(1).Left = WkSht.Range("B2").Left 
    WkSht.CheckBoxes(1).Width = WkSht.Range("B2:C2").Width 
    WkSht.CheckBoxes(1).Height = WkSht.Range("B2:B3").Height 
Set WkSht = Nothing 
End Sub 

ThisWorkbook 프로젝트. 위의 예제에서 FormatForm이 호출되어 범위 B2:C3을 포함하도록 체크 상자의 크기를 조정하는 데 사용됩니다. 워크 시트가 무겁게 디자인 된 경우 화면 공간을 최대한 활용할 수있는 솔루션이 될 수 있습니다.

+0

나쁜 생각은 아니지만 불행히도 내 경우에는 적용 할 수 없습니다. 워크 시트가 열릴 때마다 코드는 모든 확인란을 삭제하고 데이터베이스의 목록에 따라 필요한 확인란을 다시 만듭니다. 때로는 캡션이 길거나 때로는 짧을 수도 있지만 몇 개의 체크 박스가 생성되는지는 알 수 없으므로 가능한 한 적은 수의 선을 사용하고 싶습니다. –

+0

체크 박스를 만들 때 모든 경우에 높이/너비가 이중선에 충분히 크게 설정되었을 수 있습니까? 그것은 단지 두 줄이 더 많을 것입니다. –

+0

그것에 대해 생각했지만 너무 많은 공간이 필요했습니다. 나는 지금까지 20 개 이상의 체크 박스를 가지고 있으며 때로는 트리플 라인으로 간다.하지만 대부분의 시간은 1 라인 내에있다. 모든 것이 3 배로 만들어 졌다면 그것은 어리석은 것처럼 보일 것입니다! –

관련 문제