1. FAQ
  2. 엑셀(Excel)
  3. AfterEffects
  4. Premiere
  5. Photoshop
  6. ETC

이 게시판은 아별닷컴 회원만 질문을 올릴 수 있습니다. 회원에게 주어지는 특권인셈이지요. 회원이 아닌 분들은 열람만 가능합니다.

사용자 지정 메뉴 크기조정

VBA 조회 수 5040 추천 수 0 2013.01.29 18:42:19

사용자지정 메뉴를 사용 합니다

아래와 같이 사용자 지정 메뉴를 만들어 사용하고자  하는데 메뉴가 옆으로만 추가되고(위에그림)
아래로는 추가 되지 않네요(2단,3단 형식)
옆으로 5-10개 이후에는 아래에 추가 되도록 할수는 없나요(아래그림)
 

 
 
코드는
Sub dhMakeMenu()
'메뉴 만들기
Dim c As CommandBar
Dim strCur As String
    strCur = "'" & ThisWorkbook.Name & "'!"
    dhDeleteMenu
    Set c = Application.CommandBars.Add(Name:=cMenu, Position:=msoBarTop, MenuBar:=False, temporary:=True)
        dhMakeSubMenu c, msoControlButton, False, strCur & "전체시트삭제11", "SO Sheet 내용 삭제", "SO Sheet 내용 삭제", 270
        
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "data입력국내1", "첫째Data 입력", "첫째Data 입력", 66
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "data입력해외3", "두번째Data 입력", "두번째Data 입력", 350
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "실행1", "일일BackOrder 확인", "일일BackOrder 확인", 284
       
        dhMakeSubMenu c, msoControlButton, True, strCur & "실행2", "전체Order 확인", "전체Order 확인", 433
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "대영주문", "대영화학 주문추가", "대영화학 주문추가", 83
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "유창주문", "유창 주문추가", "유창 주문추가", 104
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "미래주문", "미래테크윈 주문추가", "미래테크윈 주문추가", 92
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "신규확인", "신규Item 확인", "신규Item 확인", 93
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "신규등록00", "신규ITEM Master 등록", "신규ITEM Master 등록", 136
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "SO_NO중복1", "대치PO 확인(all)", "대치PO 확인(all)", 351
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "필터", "MyData 확인", "MyData 확인", 361
       
        dhMakeSubMenu c, msoControlButton, True, strCur & "JSH필터", "짝지Data 확인(BackOrder)", "짝지Data 확인(BackOrder)", 165
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "SH필터1", "짝지Data 확인(ALL)", "짝지Data 확인(ALL)", 51
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "ETD대상", "ETD대상 보기", "ETD대상 보기", 59
       
        dhMakeSubMenu c, msoControlButton, False, strCur & "모두표시", "전체PO보기", "전체PO보기", 247
       
        'dhMakeSubMenu c, msoControlButton, False, strCur & "esGoHome", "엑사모 방문", "엑사모 방문", 1016
        'dhMakeSubMenu c, msoControlButton, False, strCur & "esHelp", "도움말", "도움말", 984
        'dhMakeSubMenu c, msoControlButton, False, strCur & "esQuit", "프로그램 종료", "종료", 1019
        'With c.Controls
         '   .Add ID:=369 '서식 붙여넣기
          '  .Item(.Count).BeginGroup = True
           ' .Add ID:=370 '값붙여넣기
            '.Add ID:=441 '화면에 보이는셀
            '.Add ID:=442 '현재 영역 선택
           
           
               '2004.11.12 버그 수정
         ' If Val(Application.Version) > 9 Then
          '      .Add ID:=5837 '테두리없음
           '     dhAddFaceID .Item(.Count), 20
            '    .Add ID:=5836 '수식
             '   dhAddFaceID .Item(.Count), 387
              '  .Add ID:=1956 '연결하여 붙여넣기
               ' dhAddFaceID .Item(.Count), 226
            'Else
            'End If
'            .Add ID:=5837 '테두리없음
'            dhAddFaceID .Item(.Count), 20
'            .Add ID:=5836 '수식
'            dhAddFaceID .Item(.Count), 387
'            .Add ID:=1956 '연결하여 붙여넣기
            'dhAddFaceID .Item(.Count), 226
            'Add ID:=755 '선택하여붙여넣기
           'dhAddFaceID .Item(.Count), 45
        'End With
    c.Visible = True
    Set c = Nothing
   
    '선택하여 붙여넣기 단축 메뉴
    'ctrl + shift + v
    Application.OnKey "^+v", "dhRunPasteSpecial"
   
End Sub


댓글 '2'

profile

[레벨:30]아별

2013.01.29 23:48:25
*.130.73.75



안녕하세요? 맑은이슬님..

도구모음을 만들어서 사용했던게 오만년 전이라 잠시 생소했습니다. ^_^;;

요즘은 전부 리본메뉴로 만들어서 사용해서 도구 모음 만들었던게 기억이 가물가물했습니다. 하하..

 

도구모음을 2개 만들어서 아이템을 나눠 넣으면 해결 될 것 같습니다.

VBA를 좀 더 공부해보고 싶으시면 리본메뉴를 만드는 것을 한번 공부해보시는 것도 재미있을 것 같네요..

참조 게시물 : http://www.abyul.com/zbxe/83200

 

첨부파일을 참고하세요..

다운받기 : abui.com_splitCommandBars_20130129.xls

 

abyulTools_0000394.jpg

 

'===============================================================================

 

1. eMenu2를 하나 더 만드시구요..

2. Commandbar를 하나 더 만드셔서 아이템을 나눠 넣습니다.

3. Sub dhDeleteMenu() 프로시저에 새로 만든 도구모음을 삭제하는 코드를 추가해줍니다.

 

'===============================================================================

 

Option Explicit

Const cMenu As String = "JaeHyeon Kim" '도구 모음의 이름
Const cMenu2 As String = "JaeHyeon Kim2" '도구 모음의 이름

Sub dhMakeMenu()
'메뉴 만들기
Dim c As CommandBar
Dim strCur As String
    strCur = "'" & ThisWorkbook.Name & "'!"
    dhDeleteMenu
   
    Set c = Application.CommandBars.Add(Name:=cMenu, Position:=msoBarTop, MenuBar:=False, temporary:=False)
        dhMakeSubMenu c, msoControlButton, False, strCur & "전체시트삭제11", "SO Sheet 내용 삭제", "SO Sheet 내용 삭제", 270
        dhMakeSubMenu c, msoControlButton, False, strCur & "data입력국내1", "첫째Data 입력", "첫째Data 입력", 66
        dhMakeSubMenu c, msoControlButton, False, strCur & "data입력해외3", "두번째Data 입력", "두번째Data 입력", 350
        dhMakeSubMenu c, msoControlButton, False, strCur & "실행1", "일일BackOrder 확인", "일일BackOrder 확인", 284
        dhMakeSubMenu c, msoControlButton, True, strCur & "실행2", "전체Order 확인", "전체Order 확인", 433
        dhMakeSubMenu c, msoControlButton, False, strCur & "대영주문", "대영화학 주문추가", "대영화학 주문추가", 83
        dhMakeSubMenu c, msoControlButton, False, strCur & "유창주문", "유창 주문추가", "유창 주문추가", 104
        dhMakeSubMenu c, msoControlButton, False, strCur & "미래주문", "미래테크윈 주문추가", "미래테크윈 주문추가", 92
    c.Visible = True
    Set c = Nothing
   
    Set c = Application.CommandBars.Add(Name:=cMenu2, Position:=msoBarTop, MenuBar:=False, temporary:=False)
        dhMakeSubMenu c, msoControlButton, False, strCur & "신규확인", "신규Item 확인", "신규Item 확인", 93
        dhMakeSubMenu c, msoControlButton, False, strCur & "신규등록00", "신규ITEM Master 등록", "신규ITEM Master 등록", 136
        dhMakeSubMenu c, msoControlButton, False, strCur & "SO_NO중복1", "대치PO 확인(all)", "대치PO 확인(all)", 351
        dhMakeSubMenu c, msoControlButton, False, strCur & "필터", "MyData 확인", "MyData 확인", 361
        dhMakeSubMenu c, msoControlButton, True, strCur & "JSH필터", "짝지Data 확인(BackOrder)", "짝지Data 확인(BackOrder)", 165
        dhMakeSubMenu c, msoControlButton, False, strCur & "JSH필터1", "짝지Data 확인(ALL)", "짝지Data 확인(ALL)", 51
        dhMakeSubMenu c, msoControlButton, False, strCur & "ETD대상", "ETD대상 보기", "ETD대상 보기", 59
        dhMakeSubMenu c, msoControlButton, False, strCur & "모두표시", "전체PO보기", "전체PO보기", 247
    c.Visible = True
    Set c = Nothing

 
    '선택하여 붙여넣기 단축 메뉴
    'ctrl + shift + v
    Application.OnKey "^+v", "dhRunPasteSpecial"
   
End Sub

 

'===============================================================================

 

Sub dhDeleteMenu()
On Error Resume Next
    Application.CommandBars(cMenu).Delete '메뉴 삭제하기
    Application.CommandBars(cMenu2).Delete '메뉴 삭제하기
    Application.OnKey "^+v", "" '바로가기 메뉴 취소
On Error GoTo 0
End Sub

 

'===============================================================================

첨부

맑은이슬

2013.01.30 07:20:03
*.247.145.54

아별님 감사 합니다,원하는 결과를 얻게 되엇습니다

정말 존경 합니다,정말 감사 드립니다,

문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
공지 공지 [공지] 아별닷컴의 엑셀 질문방 폐쇄합니다. 카페 질문방 이용하세요.. imagefile [레벨:30]아별 2015-04-23 136772
53 VBA .Find 랜덤 컨틀로바질문입니다.. [3] [레벨:4]신강현 2013-01-21 6440
52 VBA 현재 선택 된 셀을 기준으로 같은방식의 연산결과 값을 산출하는 법 file [1] [레벨:4]부루끄 2011-07-26 6510
51 VBA 사진 삽입 file [3] [레벨:1]비베초보 2013-12-16 6554
50 VBA [긴급] Range 범위 "A2:A10" -> 를 변수로 받게 하는 방법.. file [3] [레벨:1]마리너 2012-07-05 6616
49 VBA 파일&폴더 VBA 수정하여 사용하다가 막혀서 문의드립니다. file [2] [레벨:1]예진 2012-11-23 6646
48 VBA VBA 서적 추천좀 해주세요 [1] [레벨:1]김학래 2013-04-01 6665
47 VBA 외부 어플리케이션 실행 & 유저폼 일괄 닫기 & 리본 메뉴 사용자 추가 탭 숨기거나 보이게 하는 방법 [7] [레벨:3]엑셀대단해 2012-02-08 6685
46 VBA 2개의 시트를 비교하여 다른 부분을 찾아내는 프로시저 질문입니다! file [3] [레벨:6]파이스 2011-11-24 6693
45 VBA 수식이 입력된 셀은 자동으로 색상이 들어가게 하는 방법 [5] [레벨:4]부루끄 2011-07-15 6703
44 VBA 아별님! 엑셀 질문입니다. _ 고급필터를 활용한 데이터 분리 작업(각 시트로 분리) file [3] [레벨:2]북곰 2013-04-06 6744
43 VBA 파일&폴더 엑셀파일명으로 검색하여 링크걸기 file [1] [레벨:2]광택입니다 2012-09-29 6782
42 VBA .Find find 문을 공부하던도중 문제하가잇어서 질문올립니다. file [2] [레벨:4]신강현 2013-03-22 6863
41 VBA 엑셀 vba 함수 질문드릴게요. [4] [레벨:4]신강현 2013-03-04 6913
40 VBA REPORT 형식을 변형하고 싶은데 한번 봐주세요 file [7] [레벨:1]예진 2013-04-09 6936
39 VBA 엑셀 질문드립니다. file [2] [레벨:1]박상민 2014-02-14 6938
38 VBA win7 64bit / 64bit 엑셀 / 32bit DLL의 사용법이 궁금합니다. file [레벨:1]컴바치 2013-01-04 6978
37 VBA VBA 실행시 경고 메세지 출력하기 [2] [레벨:5]맑은이슬 2013-06-21 7001
36 VBA 엑셀에서 웹페이지 종료하는 방법 [3] [레벨:1]sd99 2013-05-19 7015
35 VBA 혹시 어떤 문서에서 특정 단어를 추출하는 것이 가능할까요? [2] [레벨:1]하얀모래 2014-02-25 7105
34 VBA vba 방향키 질문입니다 [4] [레벨:4]기능인 2013-07-11 7163