excel winform 导入 导出_哪些数据能从P6导出的Excel模板中再导入到P6中

最近有不少同仁 问我Excel中的开始日期和完成日期是否 可以导入到P6软件中。 我理解他们的目的是把自己在Excel里定好的开始和完成日期后直接导入到P6中,免去在P6中再编计划的过程。 就这个问题而言,答案是不可以。通常情况下,P6软件中的计划开始/完成日期是通过作业、作业工期、作业之间的逻辑关系结合作业工作日历自动计算出来的,而不是从excel中导入进来的。 今天我们给大家分享一下,哪些字段可以和哪些字段不可以从Excel(XLS)导入到P6软件中,并解释一下为什么某些列中带有星号(*)。 a52c3a759459aade3e13e5692a42a5b2.png 当我们打开一个从P6导出来的Excel时,我们会看到有些列会带有星号(*),这些所有(*)标记的字段均无法导入(或更新)。这是因为这些带星号(*)的字段可能是计算字段,或者可能是从其他地方汇总而来的数据。 特别的,类似于资源,在不经过二次开发的情况下,不支持从Excel直接向P6中导入新增的资源,但可以修改P6中已经存在的资源的代码和名称。 P6 R19 Pro版本中,从P6导出到excel的过程中,单次导出的栏位数不能超过200个,而P6软件中一个项目一共可导出的栏位数为299个。 当我们掌握了通过判断栏目中是否带有星号(*)来知晓该栏位是否可以导入(或更新)到P6中这种便捷的方法之后。你就可以更灵活和有目的地使用Excel进行与P6软件的数据交互了。 所以,再回到本文一开始有些同仁问到的从Excel导入时间到P6中的问题,首先我们知道开始和完成栏目都带有星号(*),也就是P6不支持导入(或更新)。

63955667f1019a90e4fc9fc0f395c5c7.png

换一个视角, 我认为 这 种做法也不 是正统的编制项目计划的方法,所以思路上也要做一些适当的转变 。

1de845ffa5102734b33b183ff95c93f1.gif

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用以下代码来实现将 Excel 数据导入到 MySQL 数据: ```csharp using System; using System.Data; using System.Data.OleDb; using System.Windows.Forms; using MySql.Data.MySqlClient; namespace ExcelToMySQL { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { // 设置 Excel 文件路径和连接字符串 string filePath = textBox1.Text; string fileExt = System.IO.Path.GetExtension(filePath); string connString = ""; if (fileExt == ".xls") { connString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filePath + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1;'"; } else if (fileExt == ".xlsx") { connString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filePath + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1;'"; } // 读取 Excel 数据到 DataTable OleDbConnection conn = new OleDbConnection(connString); OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", conn); DataTable dt = new DataTable(); da.Fill(dt); // 将 DataTable 数据导入到 MySQL 数据 string mysqlConnString = "Server=localhost;Database=test;Uid=root;Pwd=123456;"; MySqlConnection mysqlConn = new MySqlConnection(mysqlConnString); mysqlConn.Open(); foreach (DataRow row in dt.Rows) { MySqlCommand cmd = new MySqlCommand(); cmd.Connection = mysqlConn; cmd.CommandText = "INSERT INTO mytable (id, name, age) VALUES (@id, @name, @age)"; cmd.Parameters.AddWithValue("@id", row["ID"].ToString()); cmd.Parameters.AddWithValue("@name", row["Name"].ToString()); cmd.Parameters.AddWithValue("@age", row["Age"].ToString()); cmd.ExecuteNonQuery(); } mysqlConn.Close(); MessageBox.Show("导入成功!"); } } } ``` 在上面的代码,需要根据实际情况修改以下变量: - `filePath`:Excel 文件路径 - `connString`:Excel 连接字符串 - `mysqlConnString`:MySQL 连接字符串 - `da.Fill(dt)`:指定要读取的 Excel 工作表名称(这里是 `Sheet1`) - `cmd.CommandText`:指定要插入数据的表名和字段名 另外,需要在 WinForm 窗体添加一个 `TextBox` 控件和一个 `Button` 控件,并将它们分别命名为 `textBox1` 和 `button1`。当用户点击 `button1` 按钮时,会触发 `button1_Click` 方法,从而执行 Excel 数据导入到 MySQL 数据库的操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值