Excel e gli applicativi Microsoft Office Trovare valore con INPUTBOX e copiare l'intera riga della cella trovata

LoginRegistrati
Stai vedendo 3 articoli - dal 1 a 3 (di 3 totali)
  • Autore
    Articoli
  • #13955 Risposta

    Salve, ho poca esperienza con il codice vba. Il problema consiste nel trovare, tramite INPUTBOX il valore inserito nelle celle della colonna A e copiare l'intera riga delle celle trovate in un altro foglio. Vi allego il codice che ho redatto smanettando sul web:

    Sub CommercialOffer_Pulsante2_Click()

    Dim xRg As Range
    Dim sInp As Long
    Dim xCell As Range
    Dim I As Long
    Dim J As Long
    Dim K As Long
    Dim ur As Long

    I = Worksheets("Commercial offer sent").UsedRange.Rows.Count
    J = Worksheets("Commercial offer").UsedRange.Rows.Count
    If J = 1 Then
    If Application.WorksheetFunction.Count(Worksheets("Commercial offer").UsedRange) = 0 Then J = 0
    End If
    ur = Worksheets("Commercial offer sent").Range("A" & Rows.Count).End(xlUp).Row
    Application.ScreenUpdating = False
    sInp = Application.InputBox("Inserisci un valore", , 4)
    For K = 2 To ur
    If CStr(Worksheets("Commercial offer sent").Range("A" & K)) = sInp Then
    Worksheets("Commercial offer sent").Range("A" & K).EntireRow.Copy Destination:=Worksheets("Commercial offer").Range("A41")
    J = J + 1
    End If
    Next
    Application.ScreenUpdating = True

    End Sub

     

    MI da un problema di "tipo non corrispondente" e non so cosa fare

    #13956 Risposta
    Marius44
    Marius44
    Moderatore
      20 pts

      Ciao

      Innanzi tutto ti consiglio di allegare sempre il file (senza dati sensibili).

      L'errore segnalato (ma dovresti aggiungere in quale riga di codice si blocca e ti dà il colore giallo dell'intera riga) è dovuto al fatto che il dato analizzato in quel momento non corrisponde al tipo di variabile che hai dichiarato.

      Ti faccio un esempio:

      in questa riga

       If CStr(Worksheets("Commercial offer sent").Range("A" & K)) = sInp 

      stai convertendo in Stringa un dato che poi raffronti con la variabile sInp che hai dichiarato Long.

      Fai attenzione, poi, che tutti i valori restituiti da InputBox sono Stringhe.

      Ultima cosa: quando posti il codice mettilo fra i TagCode (si legge meglio)

      Ciao,

      Mario

      #13957 Risposta

      Claudio1950

        Risolto, ho cambiato valore nella Dim da long a String

      LoginRegistrati
      Stai vedendo 3 articoli - dal 1 a 3 (di 3 totali)
      Rispondi a: Trovare valore con INPUTBOX e copiare l'intera riga della cella trovata
      Gli allegati sono permessi solo ad utenti REGISTRATI
      Le tue informazioni:



      vecchio frac - 2750 risposte

      albatros54
      albatros54 - 996 risposte

      patel
      patel - 889 risposte

      Marius44
      Marius44 - 766 risposte

      Luca73
      Luca73 - 652 risposte