Excel e gli applicativi Microsoft Office Inserire in una variabile il numero della riga della cella attiva di un'altro fi

Login Registrati
Stai vedendo 10 articoli - dal 1 a 10 (di 10 totali)
  • Autore
    Articoli
  • #28144 Score: 0 | Risposta

    Piperino
    Partecipante

      Buongiorno a tutti, ho un piccolo problema che non sono riuscito a risolvere.
      Io ho due file di Excel aperti che per l'occasione denomino file1 e file2.
      La macro è nel file1 e avrei bisogno di inserire in una variabile di tipo integer il numero della riga della cella attiva nel file2, 

      'ho dichiarato la variabile briga in un modulo
      Public nriga As Integer
      Workbooks(file1).Sheets(nomefoglio).Activate
      nriga = ActiveCell.Row

      solo in nriga viene inserito il numero della riga attiva del file1 

      Ho provato anche la macro

      nriga= ActiveCell.Row
      Workbooks(2).ActiveSheet.Range("A1").Value = nriga

      Il risultato è che nella cella A1 del file 2 mi segna il numero della riga della cella attiva del file 1

      #28149 Score: 0 | Risposta

      GiuseppeMN
      Partecipante
        19 pts

        Buona sera, @piperino;
        mi sono perso.

        quando scrivi:
        ... La macro è nel File1 ...
        In questo caso l'istruzione:

        Workbooks(file1).Sheets(nomefoglio).Activate

        visto che il Codice VBA è nel File1, supponendo che il Foglio di lavoro da cui rilevare il "Numero della Riga attiva" sia "Foglio1", potrebbe tranquillamente essere:

        Sheets(Foglio1).Activate

        Ora supponiamo di avere il File2.xlsx già aperto, sempre che abbia interpretato correttamente la tua richiesta, il Codice VBA potrebbe essere una cosa di questo tipo:

        Option Explicit
        
        Sub Copia_numero_Riga_attiva_in_File2()
        Application.ScreenUpdating = False
        Dim nriga As Integer
        
             Sheets("Foglio1").Activate
                  nriga = ActiveCell.Row
                       Windows("File2.xlsx").Activate
                            ActiveCell.Value = nriga
        Application.ScreenUpdating = True
        End Sub

        Buona serata.

        Giuseppe

        #37661 Score: 0 | Risposta

        ANTONIO

          Ma come faccio a scorporare  i dati della cella con numriga. Mi spiego : ad esempio se io ho numriga, come vado a comporre le coordinate Range(A"......numriga) ?

           

          #37664 Score: 0 | Risposta

          vecchio frac
          Senior Moderator
            272 pts

            Antonio scusami ma davvero hai riesumato nua discussione di tre anni fa?   

            Comunque non so se interpreto bene la tua domanda, ma per passare a Range un riferimento valido devi costruire una stringa perciò come hai intuito ti basta fare:

            Range("A" & numriga) (perché Excel effettua comunque un cast implicito di tipi, cioè trasforma implicitamente una variabile di tipo numero in una di tipo testo e la concatena alla costante letterale "A" per ottenere qualcosa simile a Range("A56") (se numriga=56).

            In alternativa puoi usare la notazione con Cells(riga, colonna): Cells(56, 1) equivale a Range("A56") e di passaggio faccio notare che puoi scrivere anche Cells(56, "A").

            #37665 Score: 0 | Risposta

            ANTONIO

              Scusami, ma è la prima volta che mi imbatto in questo problema  . Comunque adesso rivado a vedere quella discussione. Grazie comunque.

              #37666 Score: 0 | Risposta

              vecchio frac
              Senior Moderator
                272 pts

                Suggerisco comunque di aprire una discussione tua, esemplificando il problema e il risultato atteso, se necessario allegando file di prova.

                #49103 Score: 0 | Risposta

                Riccardo Lio

                  Ho vari fogli, tutti con la stessa struttura di dati, si tratta di informazioni su iscritti alle gare.

                  Ho una tabella dati di n righe e colonne da A a N. Le righe che sono interessate partono dalla nona.

                  La mia esigenza è quella di evidenziare la riga  (da A ad N) in cui inserisco un dato nella cella attiva, colonna K.

                  Inoltre, dopo l'inserimento e con invio, rimanesse evidenziata fino ad un nuovo inserimeto.

                  Sarei grato se potesse aiutarmi!

                  Cordiali saluti

                  Riccardo Lio

                  Treviso

                   

                   

                  #49104 Score: 0 | Risposta

                  vecchio frac
                  Senior Moderator
                    272 pts

                    Ciao Riccardo Lio, gentilmente non ti accodare a una discussione vecchia e ormai chiusa, con cui poi c'entri poco, ma apri una discussione nuova tutta tua. Ti consiglio di registrarti al forum per poter allegare un file con uno scenario di esempio e la descrizione del risultato da raggiungere.

                    Inoltre quello che chiedi si puo' fare ma solo con VBA (ed e' un argomento gia' trattato in passato). Devi quindi anche cominciare a pensare di immergerti in questo ambiente e cercare di capire i suggerimenti che ti verranno dati.

                    #49107 Score: 0 | Risposta

                    Riccardo Lio

                      Grazie per la pronta risposta.

                      Chiedo scusa per l'uso improprio, ma non sono pratico di come funzionano questi forum. 

                      Avevo visto un argomento simile  dopo vane ricerche e credevo che si potesse chuedere un aiuto tramite email.

                      Grazie comunque.

                      Riccardo Lio

                      Ps. Si intendevo un aiuto  in VBA

                      #49111 Score: 0 | Risposta

                      vecchio frac
                      Senior Moderator
                        272 pts

                        Riccardo Lio ha scritto:

                        credevo che si potesse chuedere un aiuto tramite email.

                        Tramite mail? Cosa intendi?

                        Comunque per favore apri una nuova discussione. Questa e' chiusa ormai.

                      Login Registrati
                      Stai vedendo 10 articoli - dal 1 a 10 (di 10 totali)
                      Rispondi a: Inserire in una variabile il numero della riga della cella attiva di un'altro fi
                      Gli allegati sono permessi solo ad utenti REGISTRATI
                      Le tue informazioni: