excel cerca un testo uguale e copia i rispettivi valori della stessa riga

Anonimo
2010-12-17T20:12:18+00:00

Ciao a tutti

ho un' altro problema un pò intrigato.

ho una tabella range (B8:E165) nella colonna B (cella B8) devo inserire un testo es. 'PIPPO' mentre nella stessa riga ma nelle colonne C-D-E- dei valori che sono legati al testo 'PIPPO' es. età,peso,altezza.Vorrei che se nella colonna B (es. cella B15 ) se dovessi tornare da inserire 'PIPPO', in automatico si compilino le celle C15-D15-E15 con gli stessi valori del 'PIPPO' della cella B8

spero di essere stato chiaro grazie ancora

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2010-12-18T18:04:57+00:00

Ciao a tutti

ho un' altro problema un pò intrigato.

ho una tabella range (B8:E165) nella colonna B (cella B8) devo inserire un testo es. 'PIPPO' mentre nella stessa riga ma nelle colonne C-D-E- dei valori che sono legati al testo 'PIPPO' es. età,peso,altezza.Vorrei che se nella colonna B (es. cella B15 ) se dovessi tornare da inserire 'PIPPO', in automatico si compilino le celle C15-D15-E15 con gli stessi valori del 'PIPPO' della cella B8

spero di essere stato chiaro grazie ancora

Non è chiarissimo quello che vuoi fare. Ma proviamo. Cioè, prova tu una cosa come questa:

Private Sub Worksheet_Change(ByVal Target As Range)

    Dim rng As Range

    Dim c As Range

    Set rng = Me.Range("B8:B" & Target.Row - 1)

    On Error Resume Next

    If Target.Cells.Count = 1 Then

        If Not Intersect(Target, Me.Range("B8:B" & Target.Row)) Is Nothing Then

            For Each c In rng

                If Target.Value = c.Value Then

                    Me.Range("C" & c.Row & ":E" & c.Row).Copy _

                        Destination:=Target.Offset(0, 1)

                End If

            Next

        End If

    End If

    Set c = Nothing

    Set rng = Nothing

End Sub

E' sempre l'evento Change del foglio sul quale vuoi questa cosa e ne abbiamo già discusso qui: http://social.answers.microsoft.com/Forums/it-IT/officeexcelit/thread/4a4017e2-175d-470c-865c-b4e3c14d2ff3 . Il codice *distingue* fra maiuscole e minuscole. Se non vuoi questa distinzione, modifica questa riga di codice:

 If Target.Value = c.Value Then

così:

If UCase(Target.Value) = UCase(c.Value) Then

Per favore, fai sapere se hai risolto, grazie. E fai attenzione quando assegni la risposta, dovresti asegnare alla risposta che risolve, non alla tua conferma(vedi sempre il link al tuo post precedente). Grazie.


--

La soluzione, il codice ed i files sono forniti *così come sono* e l’autore declina ogni responsabilità per eventuali problemi causati dalla soluzione proposta se usata impropriamente. Create e utilizzate una copia del file per le vostre prove, *prima* di utilizzare la soluzione in files importanti.

--

Mauro Gamberini - Microsoft© MVP(Excel)

http://www.maurogsc.eu/

La risposta è stata utile?

0 commenti Nessun commento

1 risposta aggiuntiva

Ordina per: Più utili
  1. Anonimo
    2010-12-18T19:18:46+00:00

    complimenti hai capito al volo il concetto e il codice che mi hai dato funziona alla perfezione (ho imparato qualcosa dall'errore che avevo fatto in precedenza), ti ringrazio perchè mi risolvi un gran problema al lavoro,in questo modo velocizzerò alcuni passaggi

    grazie e alla prossima

    La risposta è stata utile?

    0 commenti Nessun commento