Sviluppare funzionalita su Microsoft Office con VBA Export foglio excel con riferimenti ad altri fogli… 2 – La vendetta

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

    essegi75
    Partecipante

      Devo riaprire il post per risolvere un'anomalia relativa alla conversione delle celle C9, C10 e C11 da collegamento a numero e per il salvataggio del file.

      Questa la macro (che non nego aver preso un po qua e un po la, cercando di assemblare le funzioni)

      ----------

      Sub esporta()
      Sheets("Scritture").Range("C9").Value = Sheets("Attività").Range("N9").Value
      Sheets("Scritture").Range("C10").Value = Sheets("Attività").Range("N10").Value
      Sheets("Scritture").Range("C11").Value = Sheets("Attività").Range("N11").Value
      Sheets("Scritture").Range("C12").Value = Sheets("Attività").Range("N32").Value
      Sheets("Scritture").Range("C13").Value = Sheets("Attività").Range("N12").Value
      Sheets("Scritture").Activate

      Dim tb As Workbook
      Dim wb As Workbook

      Set tb = ThisWorkbook
      Set wb = Workbooks.Add

      tb.Worksheets("Scritture").Copy

      fpath = wb.Path & "\"
      nomefile = ActiveSheet.Range("H1").Value & ".xlsx"
      Application.Dialogs(xlDialogSaveAs).Show nomefile
      ActiveWorkbook.Close SaveChanges:=False
      End Sub

      --------

      1. le celle vengono convertite in numero, ma purtroppo anche nel file di origine i numeri sostituiscono i collegamenti e questo non deve accadere perché nel file originale devono rimanere i collegamenti al foglio attività

      2. l'oggetto a cui è collegata la macro è, e deve restare, nel foglio Attività... a questo punto devo prendere come nome del file, il contenuto della cella H1 del foglio Attività (cosa che non accade) e poi procedere al salvataggio del foglio esportato ... cosa che non accade!!!

      Allego il file per facilitare la risoluzione del problema

      Allegati:
      You must be logged in to view attached files.
      #21436 Risposta
      Marius44
      Marius44
      Moderatore
      • Sfida #4
        11 pts

        Ciao

        Dovresti chiederti quale è il Foglio attivo nel momento in cui il codice arriva a: 

        nomefile = ActiveSheet.Range("H1").Value & ".xlsx"

         

        A mio avviso ti trovi sul Foglio appena creato (quindi vuoto).

        Ciao,

        Mario

         

        PS. Il codice va messo fra i TagCode (vedi sopra "(codice VBA)" per una migliore leggibilità.

        #21439 Risposta
        patel
        patel
        Moderatore
        • Sfida #6
          33 pts

          E sempre meglio evitare di usare ActiveSheet e Activecell ed usare il riferimento al foglio desiderato, quindi al posto di ActiveSheet scrivi Sheets("nome") o Sheets(numero)

        LoginRegistrati
        Stai vedendo 3 articoli - dal 1 a 3 (di 3 totali)
        Rispondi a: Export foglio excel con riferimenti ad altri fogli… 2 – La vendetta
        Gli allegati sono permessi solo ad utenti REGISTRATI
        Le tue informazioni:



        vecchio frac - 2748 risposte

        albatros54
        albatros54 - 735 risposte

        patel
        patel - 636 risposte

        Marius44
        Marius44 - 557 risposte

        Luca73
        Luca73 - 523 risposte