Domanda

Ho un elenco di centinaia di aziende in una colonna.Ci sono società ripetute che sono state immesse in modo diverso.(cioè "Nike" VS "Nike Inc")

Sto cercando di programmare una macro in Excel per loop attraverso la colonna per cercare "Nike" e se trovata sostituirà ciò che è in quella cella a un nome della società coerente (cioè "Nike, Inc.") l'obiettivosarebbe avere la ricerca della macro per molte aziende.

Apprezzo qualsiasi aiuto!

È stato utile?

Soluzione

Ecco un esempio per nike e guado

Sub Company()
    ary = Array("Nike", "Ford")
    Dim v As String, i As Long, j As Long
    For i = LBound(ary) To UBound(ary)
        v = ary(i)
        For j = 1 To Cells(Rows.Count, "A").End(xlUp).Row
            If InStr(1, Cells(j, "A"), v) > 0 Then
                Cells(j, "A") = v
            End If
        Next j
    Next i
End Sub
.

Espandi Ary () come richiesto.

Altri suggerimenti

dim configSht as WorkSheet, compArray() as String, x as Integer
set configSht = thisWorkbook.Sheets("Config")'This identifies your config sheet
redim compArray(0)
for x = 1 to Cells(Rows.Count, "A").End(xlUp).Row
   if Cells(x,"A")<>"" then
       compArray(UBound(compArray) = Cells(Rows.Count, "A")

   End IF
   reDim Preserve compArray(UBound(compArray)+1)
Next
.

Questa è un'idea molto semplice.Quindi useresti compArray al posto di ary in @ Gary's Student Solution.L'array di confronto conterrebbe le informazioni che si desidera leggere la cella dopo aver eseguito il codice.Quindi se vuoi "Nike Inc."Per tutte le istanze di "Nike" allora "Nike Inc."sarebbe nella tua configurazione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top