>

A 또는 B 열에서 "Currency"라는 텍스트를 찾고 통화 아래에 나열된 모든 통화를 저장하고 싶습니다. 금액과 동일한 프로세스 (열에있을 수 있음) 배열에 값을 저장하십시오. 그런 다음 출력 시트에 붙여 넣습니다. 통화는 시트의 첫 번째 행에있는 출력 시트에 이미 나열되어 있습니다. 그러나 새 통화 인 경우 코드는 행 1에서 마지막으로 사용한 셀을 찾아서 추가해야합니다. 금액 및 금액은 소스 시트에서 복사 한 통화 및 ID 번호에 대해 출력 시트에 추가해야합니다.

코드가 있습니다.

   Public Sub loopRow()
    Dim curArray     As Variant
    Dim listarray As Variant
    Dim cnt         As Long
'Find Currency
Dim rgFound As Range
Set rgFound = Range("A:B").Find("Currency")
'Find last used row
    curArray = Cells(rgFound.Address).End(xlUp).Row
    'Transpose list of currecny from the row down from the word Currency that it has found
        listarray = Application.Transpose(Cells(Rows, curArray).End(xlUp)).Row
    For cnt = LBound(curArray) To UBound(curArray)
        curArray(cnt) = curArray(cnt)
    Next cnt
    For cnt = LBound(curArray) To UBound(curArray)
        'Debug.Print curArray(cnt)
    'Copy and paste into Sheet under the correct curreny, if new currency then add this in row A

    Next cnt
End Sub

  • 답변 # 1

    질문을 이해해야 할 필요가 있지만 답변을 드릴 수 있도록 최선을 다하겠습니다.

    우리가 가진 문제는 소스 시트를 전혀 볼 수 없기 때문에 사용자가하는 방식으로 보지 못하는 것입니다. 열 A 또는 B 또는 둘 다에 통화라는 단어가 있고 어딘가에 ID 열이 있고 모든 곳에 금액 값이 있다고 가정합니다. 까다로운 소스 데이터입니다. 가능성이 더 높으면 ID가 특정 열에 있고 금액이 열 집합에 있으면 기회가있을 것입니다.

    질문은 잘 수행하고 싶은 기본 단계를 간략하게 설명하므로 시작하기가 좋습니다.

    그러나 소스 데이터에 대해 올바른 경우 VBA없이 모든 작업을 수행 할 수 있습니다. 작업 시트 또는 여러 개의 작업 시트를 만드십시오. 확실히 전체 통화 목록을 정렬하는 것입니다. 열 A와 B의 사본을 잡고 (공식별로) 작업 시트를 한 줄씩 살펴보고 로직을 사용하여 목록을 작성하십시오. 스프레드 시트가 훌륭합니다.

    목록이 있으면 출력 목록에서 행 머리글로 사용하고 sumif를 사용하여 값을 가져옵니다. ID가 어떻게 적용되는지 잘 모르겠지만 행 머리글 인 경우 위와 동일하게 고유 ID 목록을 가져 와서 A 열의 출력 페이지에 연결하십시오. 그건.

    알아야 할 모든 것을 거의 말하지는 않지만 잘 풀면 Excel과 VBA에 들어가야 할 때에 대해 많은 것을 알게 될 것입니다.

    VBA를 사용하여 원하는 경우 각 단계가 작동 할 때까지 분류 한 후 다음 단계로 진행하십시오.

    더 많은 도움이 필요하면 여기에 데이터를 붙여 넣으십시오. 필요한 경우 먼저 익명으로 처리하십시오.

관련 자료

  • 이전 javascript - ID가 동일한 경우 배열 객체 값을 배열에 병합하는 방법
  • 다음 c - 문자열의 ASCII를 얻는 방법