title: How can I save filtered DataGridView data into Excel using EPPlus?
body: <p>How can I import filtered data from the <code>DataGridView</code> into Excel using EPPlus?
  I don't know where to start, I haven't found anything similar to my problem. </p>
  
  <p>This is the code for my save button:</p>
  
  <pre><code>SaveFileDialog saveFileDialog1 = new SaveFileDialog();
  using (MySqlConnection con = new MySqlConnection(connectionString))
  {
      using (MySqlCommand cmd = new MySqlCommand("SELECT * FROM statusrouted.routed", con))
      {
          cmd.CommandType = CommandType.Text;
          using (MySqlDataAdapter sda = new MySqlDataAdapter(cmd))
          {
              using (DataTable dt = new DataTable())
              {
                  using (ExcelPackage pck = new ExcelPackage())
                  {
                      sda.Fill(dt);
  
  
                      ExcelWorksheet ws = pck.Workbook.Worksheets.Add(DateTime.Today.ToString("MMMM-yyyy"));
  
                      ws.Cells["A2"].LoadFromDataTable( dt, true);
  
  
                      saveFileDialog1.Title = "Save as Excel";
                      saveFileDialog1.FileName = "";
                      saveFileDialog1.Filter = "Excel files(2007)|*.xlsx";
  
                      if (saveFileDialog1.ShowDialog() != DialogResult.Cancel)
                      {
                          try
                          {
                              pck.SaveAs(new FileInfo(@"" + saveFileDialog1.FileName));
                              recentsToolStripMenuItem1.AddRecentItem(@"" + saveFileDialog1.FileName);
                          }
                          catch (Exception)
                          {
                              DialogResult reminder = MessageBox.Show("Cannot save file, file opened in another program.\nClose it first! ", "Save Failed", MessageBoxButtons.OK);
                          }
                      }
                  }
              }
          }
      }
  }
  </code></pre>
  
  <p>This is the code for my filter in a <code>textbox_textchanged</code> event:
  I don't know if this is important.</p>
  
  <pre><code>DataView DV = new DataView(dt);
  string oks;
  if (comboBox1.SelectedIndex == 0)
  {
      oks = "ffrom";
  }
  else if (comboBox1.SelectedIndex == 1)
  {
      oks = "office";
  }
  else if (comboBox1.SelectedIndex == 2)
  {
      oks = "code";
  }
  
  else
  {
      if (comboBox1.SelectedIndex == 3)
      {
          oks = "datein";
      }
      else
      {
          oks = "dateout";
      }
  }
  
  DV.RowFilter = string.Format( oks+ " LIKE '%{0}%'", textBox5.Text);
  this.dataGridView1.DataSource = DV;
  dataGridView1.ClearSelection();
  </code></pre>