나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내
작성자:  

 참서리 (k5953)

추천:  2
파일:     조회:  1055
제목:   [RE]VBA에서 입력한 셀의 데이터가 있으면 아래셀에 입력하게 하는 방법
     
 
' 다음과 같이 해 보세요.
' 참고로 테스트는 해 보지 않았습니다.

'------------
'시나리오
'------------
' Sheet1외의 시트의 모든 E19의 값들을 
' Sheet1의 L8에 종으로 붙여 넣습니다.
'-----------------------------------

'----------------------------------------------
Sub copy_data()
'----------------------------------------------  
  
  dim sht as worksheet
  ' 데이타를 담을 배열 선언
  dim varX as variant: varX=array()

  ' 각 시트를 돌며
  '------------------------------
  for each sht in worksheets
  '------------------------------
     ' 시트명이 'Sheet1'이 아닐 경우
     if sht.name<>"Sheet1" then
         'E19 값을 배열에 추가
         push varX, sht.Range("E19").Value
     end if
  '------------------------------
  next  
  '------------------------------
  
  dim rngx as range
  '붙여 넣을 위치
  set rngx = Worksheets("Sheet1").range("L8")
  
  '1차원 배열이므로 Transpose하여 2차원 배열로 변환
  varX = worksheetfunction.transpose(varX)
  ' 대입
  rngx.resize(ubound(varX,1),1).value = varX
  
End With


'-------------------------------------------
sub push(arr as variant, ele as variant)
'-------------------------------------------
  dim i as long : i = ubound(arr,1)+1
  redim preserve arr(i)
  arr(i)=ele

end sub
 
[불량 게시물 신고]  
참서리제 유튜브 채널에 오시면 Excel,VBA관련 자료를 공부할 수 있습니다.
https://www.youtube.com/channel/UChR2YTnlpU9OVfLyH_09YeA
04-03 (18:57)
삭제 ■신고
Belkna이제확인했습니다.
감사합니다 잘작동하네요. 유용하게쓰겠습니다.
04-04 (09:25)
삭제 ■신고
        
  

작성일 : 2019-04-03(18:56)
최종수정일 : 2019-04-03(18:56)
 


 ◎ 관련글

  제 목   작성자   날짜
VBA에서 입력한 셀의 데이터가 있으면 아래셀에 입력하게 하는 방법 Belkna 2019-04-03
[RE]VBA에서 입력한 셀의 데이터가 있으면 아래셀에 입력하게 하는 방법 참서리 2019-04-03