목록그림 (5)
rand(life)
지식인 질문에 대한 답"한 시트에 여러 페이지가 있는데, 각 페이지를 별개의 시트로 나누는 방법"에 대한 문의였다. HpageBreak가 페이지 나누기니까, 그것을 기준으로 순환문을 돌리면 된다고 간단히 생각해서, 답변을 주려고 했는데예제 파일을 보니 시트 안에 글자만 있는 것이 아니라 도형과 차트들이 들어있었다문제는, 도형과 차트는 시트 복사를 하면 문자처럼 자동으로 같이 따라 오는 것이 아니라각 개체별로 따로 복사해서 위치를 조정해주어야한다는 점이었다. 그래서 작업의 순서를 다음과 같이 잡았다 1. 페이지나누기 갯수대로 원본시트복사하기2. 해당 각 페이지의 범위 설정 (eg. 2페이지는 15행~30행)3. 범위에 들지 않는 페이지는 삭제 (2페이지가 아닌 1~14, 31~끝은 삭제)4. 원본 시트에서..
사용자 정의 폼은 아직 익숙하지 않다원래는 "어떤 시트에 있는 그림 중 랜덤으로 다른 시트에 불러오고 싶다"는 지식인 질문이 있어서 거기에 대한 답을 하려고했다.그림 자체만 불러오는 것은 쉽다 Set ws = Sheets("sheet2") For Each pic In ws.Pictures ReDim Preserve arr(1, i) arr(0, i) = pic.Name arr(1, i) = pic.TopLeftCell.Address i = i + 1 Next pic 이런 식으로 Sheet2에 있는 그림의 이름을 배열로 받은 다음, 배열의 인수를 랜덤으로 돌려서그 인수를 가진 배열에서 그림의 이름을 받아와서 시트에 불러오면 된다. (복사 - 붙여넣기) 그런데, 조건이 하나 있었던 것이 "이미지 틀"에 불러..
위의 그림처럼 D2셀에 사진의 이름을 주면, 그 이름과 같은 이름의 사진을 D5셀에 나타나도록 하는 방법이다.별도의 시트에 위와 같이 사진 이름과 사진을 매칭시켜 정리해두어야한다. 그 다음, 사진 하나를 아무거나 복사한다. (Ctrl-C)이제 사진이 나타나야하는 셀을 선택하고 그림으로 붙여넣기를 한다. "붙여넣기"에서 역삼각형을 클릭하면 나타나는 메뉴에서 "그림"을 선택하면 된다. 이제 그림을 셀의 크기에 맞게 적당히 조정해준다. 수식 - 이름관리자로 가서 이름정의를 해준다.상황에 따라 다르겠지만, 첨부화일의 경우에는 "사진위치"는 =INDEX(사진범위,MATCH(Sheet2!$D$2,사진이름,0),1)"사진범위"는 =데이타!$C$2:$C$4"사진이름"은 =데이타!$B$2:$B$4 이렇게 설정되어있다.이..
지정된 셀 범위를 png, jpg 등 그림 파일로 저장하는 매크로이다지식인 질문글에 대한 답변이다. Option Explicit Sub Macro() Dim rng As Range Dim T As String T = "d:\" & "배정표_" & Format(Date, "yymmdd") Set rng = Range("A1:AI42") rng.CopyPicture xlScreen, xlPicture With ActiveSheet.ChartObjects.Add(0, 0, rng.Width, rng.Height) .ShapeRange.Line.Visible = msoFalse .Select .Chart.Paste .Chart.Export T & ".png", "PNG" .Delete End With MsgBo..
[클릭한 도형에 써져있는 텍스트]변수 = ActiveSheet.Shapes(Application.Caller).TextFrame.Characters.Text [도형에 이름부여]이름을 부여하는 것은..해당도형을 SELECT 하신 후에...VBA 에서..Selection.Name = "어떤이름" [병합된 셀 크기에 맞추어 그림 삽입] Set s = Range("B2").MergeArea ThisWorkbook.Sheet1.Shapes.AddPicture img, _ True, True, s.Left, s.Top, s.Width, s.Height [그림 넣기] Set oPicture = Worksheets("Final Result").Shapes.AddPicture(strPictureFilePath _ & C..