1、Excel表格完成录音与回放想学吗?让Excel表格完成录音与回放!在给学生讲Excel表格时,很多学生感觉到它很难。问我可不可以把我讲课的内容录制下来,让他们拿回家再多看几遍。我想可以用录像机把我讲课的内容录下来,但操作不方便,又费时费力。我想学生只是要看我讲课的内容,又不是看我讲课的台风,如果只把这讲课的内容录下来不就行了吗? 经过研究,我找到了一种方法,既可以让学生看见我的Excel表格操作步骤,又可以听见我讲话的声音。特写下来以供有这方便需求的读者参考。 操作步骤: 第一步:打开Excel单击菜单中的插入按钮选择对象。第二步:在对象对话框中选择音效单击确定按钮。第三步:单击开始录制声音
2、按钮。这时就可以边操作边讲话了。所讲的话全部被录在电子表中了。(注:这种录单方式只能录60秒,当然我们可以让它多录制一会,方法是:当快录制完时单击一下停止录制按钮,再单击开始录制声音按钮,这样循环往复,便可以长时间录制了) 第四步:全部录制完毕后单击文件菜单中的退出按钮再弹出的对话框中单击是按钮。最后把这个文件保存起来拿给学生,学生只需要双击电子表格中的图标便可以听见声音了。excel经验小结(二)一、感叹号(!)中括号()在自定义格式中的作用是什么? 叹号是强制使其后面的一个字符按照普通文本显示,比如A1=123,如果要显示成123h,定义格式为0h是不行的,因为字母h在格式中代表特殊含义(
3、小时),所以要定义成0!h,字母h会被强制显示。 的作用有几种: 1、设置条件,比如100a,数字大于10时,数字后面加字母a。 2、显示颜色,红色0;蓝色-0,正数和0显示红色,负数显示为蓝色。 3、扩展显示(不知道怎么准确命名),比如A1=1.2 (天),表示成时分秒格式,如果用h:mm:ss,显示为4:48:00,小时不能大于24,如果设置为h:mm:ss,则显示为28:48:00。 (此项转于:) 二、快速输入时间,首先选定单元格区域-格式-单元格-日期-选中所需日期类型,假如选定的是:2010-1-4形式的,那么可用输入2010/1/4即可,单元格会自动转换的,如果是当年的,可直接输
4、入:1/4即可。 三、Excel将YYYYMMDD日期格式改为YYYY-MM-DD格式或YYYY年MM月DD日 若A1=20081201,转化为日期型:B1=DATE(MID(A2,1,4),MID(A2,5,2),MID(A2,7,8),然后在B1单元格中直接设置格式即可。 或B1=MID(A2,1,4)&年&MID(A2,5,2)&月&MID(A2,7,8)&日)。MID函数的语法是,=MID(含取值的数值,取值开始位序号,取值位数)。 假设A1身份证号码是210304198812316014,提取生日的公式是=MID(A1,7,4)&年&MID(A1,11,2)&月&MID(A1,13,
5、2)&日,返回的是1998年12月31日。 四、excel如何将yyyymm日期格式修改为yyyy/mm 选中单元格-鼠标右键-设置单元格格式-自定义-在类型里面填写:0000!/00 即可。 (这里的0和!都是占位符,具体可从网上查看). 五、excel表格里将100s如何转化为时间格式00:01:40? =TEXT(A1/86400,hh:mm:ss)或者直接=A1/86400,然后将单元格设置为自定义格式:hh:mm:ss,在单元格时间的基本单位是天,所以一天是24*60*60=86400秒。 加括号才可以总小时的累计。 六、excel表格中将时间00:01:40转换成秒数? 在A1单元
6、格中输入时间00:01:26,在A2单元格中输入=SUM(HOUR(A1)*3600,MINUTE(A1)*60,SECOND(A1),注意单元格要设置成数值形式的,本人就是没有注意这个,搞了半天。Excel高级使用技巧1、编辑技巧 1 编辑技巧 (1) 分数的输入 如果直接输入“1/5”,系统会将其变为“1月5日”,解决办法是:先输入“0”,然后输入空格,再输入分数“1/5”。 (2) 序列“001”的输入 如果直接输入“001”,系统会自动判断001为数据1,解决办法是:首先输入“”(西文单引号),然后输入“001”。 (3) 日期的输入 如果要输入“4月5日”,直接输入“4/5”,再敲回
7、车就行了。如果要输入当前日期,按一下“Ctrl+;”键。 (4) 填充条纹 如果想在工作簿中加入漂亮的横条纹,可以利用对齐方式中的填充功能。先在一单元格内填入“*”或“”等符号,然后单击此单元格,向右拖动鼠标,选中横向若干单元格,单击“格式”菜单,选中“单元格”命令,在弹出的“单元格格式”菜单中,选择“对齐”选项卡,在水平对齐下拉列表中选择“填充”,单击“确定”按钮(如图1)。 图DataGridView导出excel本文参考网友江边孤岛(感谢原作者)的WinForm中DataGrid扩展类 - 快速导出Excel文件,带保存对话框,并杀死进程。相对完美的解决方案!(url: 63517.as
8、px )而写,但本文是DataGridView导出Excel,DataGridView中的隐含列不导出。在贴出代码前几点说明如下: 1、添加Microsoft Excel 11.0 Object Library的引用后,在项目的引用列表中会多出3个引用项,分别是Excel、Microsoft.Office.Core、VBIDE;(当然添加Microsoft Word 11.0 Object Library的引用后,在项目的引用列表中也会多出3个引用项,分别是Word、Microsoft.Office.Core、VBIDE,即第一个是变化的,后两个是相同的,但如果你添加Microsoft Off
9、ice 11.0 Object Library,那么仅有Microsoft.Office.Core) 微软的Office对象库包含: Microsoft Access 11.0 Object Library Microsoft Graph 11.0 Object Library Microsoft Excel 11.0 Object Library Microsoft Office 11.0 Object Library Microsoft Outlook 11.0 Object Library Microsoft PowerPoint 11.0 Object Library Microsof
10、t Word 11.0 Object Library 对于上面的对象库,微软是否提供了API文档?本人尚未找到。 2、文件是否已经打开的判断,网上很多是以独享的方式打开文件,如果出现异常则说明文件已经在使用中,我觉得这个判断不理想,不知道是否有更好的处理方法? 3、实测中发现执行设置Excel字体大小和将字体设置为粗体的语句耗时较长,不知道是本人机器环境的原因还是Excel的普遍问题? 4、原文杀死excel进程的处理方法并不得当,会将所有正在使用的excel都关闭掉。但导出excel确实会增加excel的进程,不妥。 一下是代码 调用方法为: 导出类源码: using System; usi
11、ng System.Collections.Generic; using System.Text; using System.Windows.Forms; using System.Diagnostics; using System.IO; using Microsoft.Office.Interop.Excel; namespace zzxx public class ExportToExcel /记录保存文件的名称(含路径) private string FullFileName = string.Empty; #region 保存对话框 private bool SaveFileDial
12、og() SaveFileDialog saveFileDialog1 = new SaveFileDialog(); saveFileDialog1.Filter = excel files(*.xls)*.xls; saveFileDialog1.FilterIndex = 0; saveFileDialog1.RestoreDirectory = true; /标志变量、返回结果 bool IsOK = false; bool result = false; /文件已经存在,需要重新输入文件名时,循环打开保存对话框 while (!IsOK) if (saveFileDialog1.Sh
13、owDialog() = DialogResult.OK) /修改给定的文件名,增加时间信息 /FullFileName = saveFileDialog1.FileName.Insert(saveFileDialog1 .FileName .LastIndexOf ()+1,DateTime .Now .ToString (yyyyMMdd); FullFileName = saveFileDialog1.FileName; /文件信息,判断文件是否已经存在; /遗留问题:文件是否已经打开本想在此处判断,但没有找到合适的方法. FileInfo fi = new FileInfo(FullF
14、ileName ); if (fi.Exists) DialogResult dr = MessageBox.Show(文件已经存在,是否覆盖现有文件?, 系统信息, MessageBoxButtons.YesNoCancel); if (dr = DialogResult.Yes) /覆盖现有文件 IsOK = true; result = true; else if (dr = DialogResult.Cancel) /如果取消操作 IsOK = true; result = false; /如果不覆盖现有文件,则IsOK仍为false,实现循环 else IsOK = true; re
15、sult = false ; return result; #endregion #region 导出Excel public void ToExcel(Form ParentWindow, DataGridView ExportGrid, string p_ReportName) /如果网格尚未数据绑定 if (ExportGrid = null) return; /列索引,行索引 int colIndex = 0; int rowIndex = 0; /总可见列数,总可见行数 int colCount = ExportGrid.Columns.GetColumnCount(DataGrid
16、ViewElem entStates.Visible ); int rowCount = ExportGrid.Rows.GetRowCount(DataGridViewElementSta tes.Visible); /如果DataGridView中没有行,返回 if (rowCount = 0) return; /保存对话框 if (!SaveFileDialog() return; ParentWindow.Cursor = Cursors.WaitCursor; /创建Excel对象 Microsoft.Office.Interop.Excel.Application xlApp =
17、new Microsoft.Office.Interop.Excel.Application(); if (xlApp = null) MessageBox.Show(Excel无法启动,系统信息); return; /创建Excel工作薄 Microsoft.Office.Interop.Excel.Workbook xlBook = xlApp.Workbooks.Add(true); Microsoft .Office .Interop .Excel .Worksheet xlSheet=(Microsoft .Office .Interop .Excel .Worksheet )xlB
18、ook .Worksheets 1; /设置标题。实测中发现执行设置字体大小和将字体设置为粗体的语句耗时较长,故注释掉了 Microsoft.Office.Interop.Excel.Range range = xlSheet.get_Range(xlApp .Cells 1,1,xlApp .Cells 1,colCount ); range.MergeCells = true; xlApp.ActiveCell.FormulaR1C1 = p_ReportName; /xlApp.ActiveCell.Font.Size = 20; /xlApp.ActiveCell.Font.Bold
19、= true; xlApp.ActiveCell.HorizontalAlignment = Microsoft.Office.Interop.Excel.Constants.xlCenter; /创建缓存数据 object , objData= object rowCount +1,colCount ; /获取列标题,隐藏的列不处理 for (int i = 0; i ExportGrid.ColumnCount; i+) if (ExportGrid.Columnsi.Visible) objDatarowIndex, colIndex+ = ExportGrid.Columnsi.Hea
20、derText; /获取数据,隐藏的列的数据忽略 for (int i = 1; i = rowCount; i+) rowIndex+; colIndex = 0; for (int j = 0; j ExportGrid.ColumnCount; j+) if (ExportGrid.Columnsj.Visible) if (ExportGridj, rowIndex - 1.ValueType = typeof(string) objDatarowIndex, colIndex+ = + ExportGridj, rowIndex - 1.Value.ToString(); else
21、objDatarowIndex, colIndex+ = ExportGridj, rowIndex - 1.Value.ToString(); System.Windows.Forms.Application.DoEvents(); /写入Excel /xlApp.get_Range(xlApp.Cells2, 1, xlApp.Cells2, colIndex).Font.Bold = true; range = xlSheet.get_Range(xlApp .Cells 2,1,xlApp .Cells rowCount +2,colCount ); range.Value2 = ob
22、jData; /保存 try xlApp.Cells.EntireColumn.AutoFit(); xlApp.Cells.VerticalAlignment = Microsoft.Office.Interop.Excel.Constants.xlCenter; xlApp.Cells.HorizontalAlignment = Microsoft.Office.Interop.Excel.Constants.xlCenter; /xlApp.Visible = true; xlBook.Saved = true; xlBook.SaveCopyAs(FullFileName); Mess
23、ageBox.Show(导出成功!, 系统信息); ParentWindow.Cursor = Cursors.Default; catch MessageBox.Show(保存出错,请检查文件是否正被使用!, 系统信息); /return false; finally xlApp.Quit(); GC.Collect(); KillProcess(excel); #endregion #region 杀死进程 private void KillProcess(string processName) System.Diagnostics.Process myProc = new Process
24、(); /得到所有打开的进程 try foreach (Process thisproc in Process.GetProcessesByName(processName) thisproc.Kill(); catch (Exception exc) throw new Exception(,exc ); #endregion Export to Excel V-B-6Public Sub CSMatListToExcel() * * * 名称:ExportToStoreExcel * 功能:导出数据据到EXCEL * 用法:ExportToStoreExcel(sql查询字符串) * *
25、Dim Rs_Data As New ADODB.Recordset Dim Irowcount As Integer Dim Icolcount As Integer Dim strSQL As String Dim xlApp As New Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet Dim xlQuery As Excel.QueryTable On Error GoTo errHandle strSQL = CSMO_ALLMaterialList + Sqv(txtWo(0
26、).Text) + , + Sqv(InitLoad.LoginUserId) Set Rs_Data = With Rs_Data If .RecordCount 1 Then MsgBox (没有记录!) Exit Sub End If 记录总数 Irowcount = .RecordCount 字段总数 Icolcount = .Fields.Count End With Set xlApp = CreateObject(Excel.Application) Set xlBook = Nothing Set xlSheet = Nothing Set xlBook = xlApp.Wor
27、kbooks().Add Set xlSheet = xlBook.Worksheets(sheet1) xlApp.AlertBeforeOverwriting = False xlApp.DisplayAlerts = False xlApp.Visible = False xlSheet.Range(a1).Value = + txtWo(0).Text + 物料清单 xlApp.ActiveSheet.Range(a1:I1).Merge 添加查询语句,导入EXCEL数据 Set xlQuery = xlSheet.QueryTables.Add(Rs_Data, xlSheet.Ra
28、nge(a2) With xlQuery .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = True .SaveData = .AdjustColumnWidth = True .RefreshPeriod = 0 .PreserveColumnInf
29、o = True End With xlQuery.FieldNames = True 显示字段名 xlQuery.Refresh With xlSheet .Range(.Cells(1, 1), .Cells(1, Icolcount).Font.Name = 细明体 标题为黑体字 .Range(.Cells(1, 1), .Cells(1, Icolcount).Font.Bold = True 标题字体加粗 .Range(.Cells(2, 1), .Cells(Irowcount + 2, Icolcount).Borders.LineStyle = xlContinuous 设置表格边框样式 End With xlApp.Act
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1