2017-08-03 1 views
1

enter image description here Gehirn geschmolzen. Ich weiß, dass Stackoverflow kein freies Coding macht, aber ich bleibe beim Start stecken. Ich versuche, die Daten von der linken Seite zu filtern und auszugeben, um wie die Daten auf der rechten Seite mithilfe von VBA-Skripts zu aussehen. Irgendwelche Vorschläge, wie ich das erreichen kann?Fehler Filtern, Ausgeben und Kurzschließen dieser Daten

+0

(1) Lesen Sie Quellenname aus dem ersten Datensatz, suchen Sie nach Zielnamen. Wenn nicht gefunden, fügen Sie den Zielnamen einen Namen hinzu. (2) Finden Sie den Quellennamen in den Zielnamen (er wird jetzt definitiv da sein) und aktualisieren Sie die anderen Spalten auf "x", wenn die entsprechende Quellspalte "x" ist (3) Wiederholen Sie für den nächsten Datensatz. (Es gibt wahrscheinlich einfachere Möglichkeiten, dies zu tun, aber ich bin hungrig und denke gerade nicht gerade.) – YowE3K

Antwort

0

Dies könnte Ihnen den Einstieg:

Sub mergeCategoryValues() 
    Dim lngRow As Long 

    With ActiveSheet 
     Dim columnToMatch As Integer: columnToMatch = 2 
     Dim columnToConcatenate As Integer: columnToConcatenate = 4 
     Dim columnToSum As Integer: columnToSum = 5 

     lngRow = .Cells(65536, columnToMatch).End(xlUp).Row 
     .Cells(columnToMatch).CurrentRegion.Sort key1:=.Cells(columnToMatch), Header:=xlYes 

     Do 
      If .Cells(lngRow, columnToMatch) = .Cells(lngRow - 1, columnToMatch) Then 
       .Cells(lngRow - 1, columnToConcatenate) = .Cells(lngRow - 1, columnToConcatenate) & .Cells(lngRow, columnToConcatenate) 
       .Cells(lngRow - 1, columnToSum) = .Cells(lngRow - 1, columnToSum) + .Cells(lngRow, columnToSum) 
       .Rows(lngRow).Delete 
      End If 

      lngRow = lngRow - 1 
     Loop Until lngRow = 1 
    End With 
End Sub 

Es wurde aus diesem Code angepasst: Excel VBA - Combine rows with duplicate values in one cell and merge values in other cell
Alles was Sie brauchen, um herauszufinden, ist die erste Spalte zu entfernen und die Variablen dynamischer zu machen. Lassen Sie mich wissen, ob das hilft.

+0

Das ist perfekt ... Ty so viel ... –

+0

Ich bin froh, dass ich helfen konnte, einen schönen Tag. –