private void MenuArquivoExcelXLSX_Click(object sender, EventArgs e) { AbrirTamplates.Title = "Buscar Arquivo Excel"; //AbrirTamplates.InitialDirectory = DirArquivo; //AbrirTamplates.FileName = string.Empty; AbrirTamplates.DefaultExt = ".xlsx"; AbrirTamplates.Filter = "Arquivos Excel|*.xlsx"; AbrirTamplates.RestoreDirectory = true; if (AbrirTamplates.ShowDialog() == System.Windows.Forms.DialogResult.OK) { string NomePlan = RetornaNomePlanilhaSelecionado(); if (string.IsNullOrEmpty(NomePlan)) { return; } try { ImportarArquivos xlsx = new ImportarArquivos(); //using (DataTable dt = xlsx.ImportarXLSX("C:\\Users\\MARQUES\\Desktop\\Pasta1.xlsx", "plan1")) using (DataTable dt = xlsx.ImportarXLSX(AbrirTamplates.FileName, NomePlan)) { if (dt != null && dt.Rows.Count > 0) { CarregaGridView(dt); return; } else { Mensagens.Alerta("Não foi possível carregar nenhum registro apartir do .xlsx informado. Por favor selecione outro arquivo."); } } } catch (Exception ex) { Mensagens.Erro(string.Format("Não foi possível carregar o arquivo: {0}", ex.Message)); } } }
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e) { try { indiceCo = e.ColumnIndex; DataGridViewComboBoxCell cb = (DataGridViewComboBoxCell)dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex]; if (cb.Value != null) { //Mensagens.Informa(string.Format("Voce selecionou: {0}", cb.EditedFormattedValue)); foreach (DataGridViewComboBoxCell item in dataGridView1.Rows[0].Cells) { string CampoAtualSelecionado = dataGridView1.Rows[0].Cells[item.ColumnIndex].FormattedValue.ToString(); //percorre todas as colunas que não seja essa atual... if (item.ColumnIndex == e.ColumnIndex) { continue; } if (CampoAtualSelecionado == "Grupo") { continue; } if (item.Value == cb.Value) { Mensagens.Informa(string.Format("Já existe um campo selecionado para \"{0}\".\nSelecione outra opção para continuar. ", cb.FormattedValue)); //cb.Value = 0; break; } } } } catch (Exception ex) { throw ex; } }
private void MenuArquivoExcelCSV_Click(object sender, EventArgs e) { AbrirTamplates.Title = "Buscar Arquivo Excel"; //AbrirTamplates.InitialDirectory = DirArquivo; //AbrirTamplates.FileName = string.Empty; AbrirTamplates.DefaultExt = ".csv"; AbrirTamplates.Filter = "Arquivos Excel|*.csv"; AbrirTamplates.RestoreDirectory = true; if (AbrirTamplates.ShowDialog() == System.Windows.Forms.DialogResult.OK) { //string NomePlan = RetornaNomePlanilhaSelecionado(); //if (string.IsNullOrEmpty(NomePlan)) return; try { ImportarArquivos csv = new ImportarArquivos(); using (DataTable dt = csv.ImportarSCV(AbrirTamplates.FileName)) { if (dt != null && dt.Rows.Count > 0) { CarregaGridView(dt); return; } else { Mensagens.Alerta("Não foi possível carregar nenhum registro apartir do .csv informado. Por favor selecione outro arquivo."); } } } catch (Exception ex) { Mensagens.Erro(string.Format("Não foi possível carregar o arquivo: {0}", ex.Message)); } } }
private void button1_Click(object sender, EventArgs e) { StringBuilder sblinhaTXT = new StringBuilder(); StringBuilder sbFinalTXT = new StringBuilder(); for (int i = 0; i < CamposGoogleIngles.Count; i++) { if (i == 0) { continue; } string valor = CamposGoogleIngles[i].ToString(); //verifica se for o ultimo não colocar "," if (valor == NomeUltimoCampo) // --> "Event 1 - Value" { sblinhaTXT.AppendFormat(string.Format("{0}", valor)); } else { sblinhaTXT.AppendFormat(string.Format("{0},", valor)); } } sbFinalTXT.AppendLine(sblinhaTXT.ToString()); //sblinhaTXT.AppendLine(); //int: indice da coluna Grid / string: Nome Combo Selecionado Dictionary <int, string> dicionarioSequenciaGrid = new Dictionary <int, string>(); for (int indice = 0; indice < dataGridView1.Columns.Count; indice++) { string valorCombo = dataGridView1.Rows[0].Cells[indice].FormattedValue.ToString(); dicionarioSequenciaGrid.Add(indice, valorCombo); } for (int IndiceLinhaGrid = 0; IndiceLinhaGrid < dataGridView1.Rows.Count; IndiceLinhaGrid++) //percorrendo linhas.... { sblinhaTXT.Clear(); gruposLinhaAtual.Clear(); // = new StringBuilder(); if (IndiceLinhaGrid == 0) { continue; } for (int indiceGoogle = 0; indiceGoogle < CamposGooglePortugues.Count; indiceGoogle++) { if (indiceGoogle == 0) { continue; } string campoGoogle = CamposGooglePortugues[indiceGoogle].ToString(); int indiceCampoGoogle = indiceGoogle; int qtdEncontrado = dicionarioSequenciaGrid.AsEnumerable().Count(pair => pair.Value == campoGoogle).ToInt(); #region Se quantidade == 0 if (qtdEncontrado == 0) { //trata contatos pois não está no excel retornado... if (campoGoogle == "Contato1" || campoGoogle == "Contato2" || campoGoogle == "Contato3" || campoGoogle == "Contato4" || campoGoogle == "Contato5" || campoGoogle == "Contato6") { if (indiceGoogle == (CamposGooglePortugues.Count - 1))//ultimo registro, tira a ultima virgula { sblinhaTXT.AppendFormat(string.Format("{0}", "Outro")); } else { sblinhaTXT.AppendFormat(string.Format("{0},", "Outro")); } continue; } if (indiceGoogle == (CamposGooglePortugues.Count - 1))//ultimo registro, tira a ultima virgula { sblinhaTXT.AppendFormat(string.Format("{0}", "")); } else { sblinhaTXT.AppendFormat(string.Format("{0},", "")); } continue; } #endregion #region Se quantidade == 1 if (qtdEncontrado == 1) { var key = dicionarioSequenciaGrid.AsEnumerable().FirstOrDefault(pair => pair.Value == campoGoogle).Key; var value = dicionarioSequenciaGrid.AsEnumerable().FirstOrDefault(pair => pair.Value == campoGoogle).Value; string valorCelulaAtual = dataGridView1.Rows[IndiceLinhaGrid].Cells[key].FormattedValue.ToString(); valorCelulaAtual = TrataCondicoesEspecificas(valorCelulaAtual, value); if (indiceGoogle == (CamposGooglePortugues.Count - 1))//ultimo registro, tira a ultima virgula { sblinhaTXT.AppendFormat(string.Format("{0}", valorCelulaAtual)); } else { sblinhaTXT.AppendFormat(string.Format("{0},", valorCelulaAtual)); } continue; } #endregion #region Se quantidade > 1 if (qtdEncontrado > 1) { string valorCelulaAtual = ""; var itensIguaisGrid = dicionarioSequenciaGrid.AsEnumerable().Where(pair => pair.Value == campoGoogle); foreach (KeyValuePair <int, string> item in itensIguaisGrid) { var key = item.Key; var value = item.Value; valorCelulaAtual = dataGridView1.Rows[IndiceLinhaGrid].Cells[key].FormattedValue.ToString(); valorCelulaAtual = TrataCondicoesEspecificas(valorCelulaAtual, value); } if (campoGoogle == "Grupo") { valorCelulaAtual = string.Format("{0};myContacts", valorCelulaAtual); } if (indiceGoogle == (CamposGooglePortugues.Count - 1))//ultimo registro, tira a ultima virgula { sblinhaTXT.AppendFormat(string.Format("{0}", valorCelulaAtual)); } else { sblinhaTXT.AppendFormat(string.Format("{0},", valorCelulaAtual)); } continue; } #endregion } sbFinalTXT.AppendLine(sblinhaTXT.ToString()); } string final = sbFinalTXT.ToString(); string caminhoArquivo = @"C:\Projetos\KEMUEL\ArquivoExportado.csv"; //caminho completo //StringBuilder sConteudo = new StringBuilder(); //sConteudo.AppendLine("Primeira linha do arquivo."); //sConteudo.AppendLine("Segunda linha do arquivo."); //sConteudo.AppendLine("Terceira e última linha do arquivo."); //invocando o método WriteAllText, informando o caminho e o conteúdo System.IO.File.WriteAllText(caminhoArquivo, sbFinalTXT.ToString()); Mensagens.Informa("Exportação concluída com sucesso!"); }
private void button1_Click(object sender, EventArgs e) { valorIndiceLinhaGrid = 0; sbContato = new StringBuilder(); sbFinalTXT = new StringBuilder(); //int: indice da coluna Grid / string: Nome Combo Selecionado dicionarioSequenciaGrid = new Dictionary <int, string>(); for (int indice = 0; indice < dataGridView1.Columns.Count; indice++) { string valorCombo = dataGridView1.Rows[0].Cells[indice].FormattedValue.ToString(); if (dataGridView1.Rows[0].Cells[indice].Value.ToString() == "0") { continue; } dicionarioSequenciaGrid.Add(indice, valorCombo); } if (dataGridView1.Rows.Count == 0) { Mensagens.Informa("Nenhuma linha na seleção atual.\nBusque um fonte de dados e tente novamente."); return; } if (dicionarioSequenciaGrid.Count == 0) { Mensagens.Informa("Nenhuma coluna foi modificada."); return; } using (FormWaiting frm = new FormWaiting(Processando)) { frm.ShowDialog(this); } //----------------------------------------------------- //define o titulo saveFileDialog1.Title = "Salvar Arquivo Texto"; //Define as extensões permitidas //saveFileDialog1.Filter = "Arquivo vCard|.vcf"; saveFileDialog1.Filter = "Arquivo vCard (*.vcf)|*.vcf"; //define o indice do filtro saveFileDialog1.FilterIndex = 0; //Atribui um valor vazio ao nome do arquivo saveFileDialog1.FileName = "ContatosExportados_" + DateTime.Now.ToString("ddMMyyyy_HHmmss"); //Define a extensão padrão como .txt saveFileDialog1.DefaultExt = ".vcf"; //define o diretório padrão //saveFileDialog1.InitialDirectory = @"c:\dados"; //restaura o diretorio atual antes de fechar a janela saveFileDialog1.RestoreDirectory = true; //Abre a caixa de dialogo e determina qual botão foi pressionado DialogResult resultado = saveFileDialog1.ShowDialog(); //Se o ousuário pressionar o botão Salvar if (resultado == DialogResult.OK) { //cria um stream usando o nome do arquivo System.IO.FileStream fs = new System.IO.FileStream(saveFileDialog1.FileName, System.IO.FileMode.Create); //cria um escrito que irá escrever no stream System.IO.StreamWriter writer = new System.IO.StreamWriter(fs); //escreve o conteúdo da caixa de texto no stream writer.Write(sbFinalTXT.ToString()); //fecha o escrito e o stream writer.Close(); //string caminhoArquivo = @"C:\Projetos\KEMUEL\ContatosExportados.vcf"; //caminho completo //System.IO.File.WriteAllText(saveFileDialog1.FileName, sbFinalTXT.ToString()); Mensagens.Informa("Exportação concluída com sucesso!"); } else { //exibe mensagem informando que a operação foi cancelada //MessageBox.Show("Operação cancelada"); return; } }