선택한 행을 다른 워크 시트로 복사


-1

예를 들어 있습니다. 한 워크 시트에 10 행. 사용자가 한 행을 클릭하면 다른 워크 시트에 표시되어야합니다. 가능합니까? 도움이 필요하십니까?

편집 : 명확히하기 위해 : 첫해에 예를 들어 학생 시험 점수 한 장이 제시됩니다 : John 10 8 10 7 Nick 8 9 8 9 Maria 7 8 8 7

두 번째 시트에는 두 번째 해에 학생 정보가 있습니다. John 9 9 10 8 Nick 8 8 9 7 Maria 7 6 8 8

나는 학생에게 어떤 종류의 최종 증명서를주고 싶다. 그래서 요약 정보는 세 번째 시트에 제시되어야한다. 클릭 할 필요는 없습니다. 세 번째 시트에 드롭 다운 목록이있을 수 있습니다.

답변:


1

이것은 빠른 매크로 일 것입니다 :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  With Sheet2.UsedRange
    'note, this won't copy to row 1, leaving headers intact.
    Target.EntireRow.Copy (.Rows(.Rows.Count + 1).EntireRow)
  End With
End Sub

그러나 선택 변경과 함께 사용하면 다른 셀을 선택할 때마다 실행되기 때문에 상당히 성 가실 수 있습니다. 따라서 일종의 백 체크 또는 다른 방법을 사용하여 생각할 수 있습니다.

아마도 코드를 사용자 정의 매크로로 사용하고 단축키를 지정하십시오.

편집하다

수식으로 만이 작업을 수행하려면 대상 행의 각 셀을 수식으로 설정해야합니다. 수식이있는 셀을 제외하고는 수식을 사용하여 셀을 직접 변경할 수있는 방법이 없습니다.

그런 다음 eigther named-ranges, VLOOKUP 또는 MATCH를 사용하는 것이 좋습니다.

명명 된 범위는 당신이 말한 것에 매우 가깝습니다.

대상 시트에서 :

A1=14

A2=MYRANGE
B2=MYRANGE
.
.
.
IV2=MYRANGE

MYRANGE는 다음과 같이 정의됩니다

=INDIRECT("SourceSheet!"&DestSheet!$A$1&":"&DestSheet!$A$1)

그러면 대상 시트의 14 행이 나타납니다. A1이 SourceSheet 인 경우에도 적절하게 편집하십시오.

두 개의 명명 된 범위를 쉽게 사용할 수 있습니다.

MYDESTRANGE=SourceSheet!MYSOURCERANGE

MYSOURCERANGE를 다른 행으로 변경하면 이전과 동일한 행을 사용하면서 MYDESTRANGE의 소스를 효과적으로 변경할 수 있습니다.


Vlookup을 사용하여 매크로없이 수행 할 수 있다고 생각했습니다.
Иван Бишевац

"사용자가 한 행을 클릭 할 때"-> 이것이 매크로가 필요하다고 가정 한 이유입니다. VBA를 사용하지 않으려면이 요구 사항을 변경해야합니다. 좀 더 구체적으로 말하면, 사용자가 10 행 중 하나를 클릭하면이 행이 다른 워크 시트에 복사됩니다. 이것은 VBA에서만 가능합니다.
Jook
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.