27/03 15:57
rangogni
Scusate su magari la mia domanda è troppo semplice ma non sono riuscito a trovare una soluzione. In pratica io riesco ad aprire un file excel in form diciamo form Homepage e posso anche manipolarlo. Però io vorrei poterlo trasferire ad un altro form diciamo form GestioneSoci dove poterlo modificare e poi salvarlo. Per un semplice testo in internet ho trovato molti tutorial che spiegano come passare un singolo data ad un altro form ma per un intero file non ho trovato nulla. Io uso visual studio 2019 e con VB.Net usando visual basic non ho avuto problemi a passare i file da un form ad un altro. Vorrrei fare la stessa cosa con C#. Aggiungo il codice del main dove apro il file.
Spero di essere stato chiaro ma a disposizione per ogni chiarimento
Ringrazio in anticipo per ogni suggerimento
Roberto
rangogni@libero.it
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using Excel = Microsoft.Office.Interop.Excel; using System.IO; namespace Gestione_ASD { public partial class HomePage : Form { //static readonly object ws; //static object wb; public HomePage() { InitializeComponent(); } private void HomePage_Load(object sender, EventArgs e) { { //percorso contiene l'indirizzo dove si trova il file libro soci del corrente anno string percorso = "B:\prova.xlsm"; //Questo è il primo modo usato per aprire il file excel Excel.Application xApp; Excel.Workbook wb; //Definisco come chiamare il file Excel.Worksheet ws; //Definisco come chiamare foglio //Excel.Range xRange; //Al momento non lo uso object misValue = System.Reflection.Missing.Value; // Avvia Excel. xApp = new Excel.Application();//Definisco l'applicazione di Excel //wb sta per workbook cioè il file excel //ws sta per worsheet cioè per il foglio del file excel wb = (Excel.Workbook)(xApp.Workbooks.Add(percorso)); //Apre il file excel xApp.Visible = true; ((Excel.Worksheet)wb.Sheets[1]).Select(Type.Missing); //Seleziono il foglio(Soci) ws = (Excel.Worksheet)wb.ActiveSheet; //Attivo il foglio selezionato //posso accederre alle celle del file ad es ws.Cells[7, 2] = prova; //Per passare al secondo form uso un Button private void btnGestioneSoci_Click(object sender, EventArgs e) { GestioneSoci frm = new GestioneSoci(); frm.Show(); this.Hide(); } //Per salvare e chiudere il file wb.Save();//Salva il file Excel wb.Close();//Chiude il file Excel } } } }
Spero di essere stato chiaro ma a disposizione per ogni chiarimento
Ringrazio in anticipo per ogni suggerimento
Roberto
rangogni@libero.it
Ultima modifica effettuata da Thejuster 28/03 9:42
Rangogni Roberto