整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

Excel中的表格粘贴后,怎样才能保证不变形呢?

Excel中的表格粘贴后,怎样才能保证不变形呢?

生我才必有用。——李白

大家在平时在复制表格的时候,不知道有没有遇到过这样的问题?

好好的按Ctrl+C复制,Ctrl+C粘贴,发现复制后的表格行高和列宽都变了,

就像下面这样:


当我们再把把word表格的内容粘贴到Excel中,发现也是全乱了。

如果我们在对表格进行行高列宽调整,那就太麻烦了。今天就给大家分享2个小技巧,教你怎么复制表格,表格才不会变形。

我们先看Excel到Excel复制技巧

1、选择整行复制,再进行粘贴,表格行高就不会变

2、选择所有行,按复制,再在新的位置点击-【选择性粘贴】,点击保留源列宽,列宽即不会变。

说完Excel复制粘贴的行高列宽不变,我们再看下Excel和Word结合使用怎么确保不会改变。

问题一、Excel内容怎么复制到Word中不变形?

答:把Excel表格直接按Ctrl 拖到word中,行高列宽都不变。

问题二、Word内容怎么复制到Excel中不变形?

答:先把word文件另存为html格式(网页)格式

再用excel打开,原来的Word表格行高列宽都不变。

以上就是给大家分享关于Excel与Excel及Excel与Word之间如何实现复制粘贴后不变形的方法,希望对你有帮助。

如果觉得文章对你有帮助的话,希望大家帮忙点赞加分享哦~,谢谢

本文由李先生的职场Excel原创,欢迎关注,带你一起长知识!

时候会需要做一个可以拉伸宽度的表格,但是现有的表格是没有这个功能的,那就需要我们手动的实现,下面我来看看,如何用原生js实现。

先看效果图,都是在表格头部进行的拉伸:

单元格被拉伸的时候,整体表格宽度不变

单元格被拉伸的时候,整体表格会变宽。

话不多说,直接上代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>表格拉伸</title>
    <style>
      #tab{
        text-align:center 
      }
    </style>
</head>
<body>
    <table id="tab" border="1"  cellpadding="2" cellspacing="0" width="500px" >
        <tr style="background-color: #dcdcdc">
            <td style="width:100px;">序号</td>
            <td>姓名</td>
            <td>语文分数</td>
            <td>数学分数</td>
        </tr>
        <tr>
            <td>1</td>
            <td>李萌</td>
            <td>80</td>
            <td>98</td>
        </tr>
        <tr>
            <td>2</td>
            <td>赵新</td>
            <td>98</td>
            <td>88</td>
        </tr>
        <tr>
            <td>3</td>
            <td>张小红</td>
            <td>82</td>
            <td>84</td>
        </tr>
        <tr>
            <td>4</td>
            <td>陈成</td>
            <td>98</td>
            <td>94</td>
        </tr>
        <tr>
            <td>5</td>
            <td>胡山</td>
            <td>77</td>
            <td>94</td>
        </tr>
    </table>
</body>
</html>
<script type="text/javascript">
     let tTD; 
     let table=document.getElementById("tab");
     for (let i=0; i <  table.rows [0].cells.length; i++) {
         table.rows[0].cells[i].onmousedown=function () {
            //记录单元格
             tTD=this;
             if (event.offsetX > tTD.offsetWidth - 10) {
                 tTD.mouseDown=true;
                 tTD.oldX=event.x;
                 tTD.oldWidth=tTD.offsetWidth;
             };
            //记录Table宽度(单元格拉伸,表格整体宽度变化时用的)
            //table=tTD; 
           // while (table.tagName !='TABLE') {table=table.parentElement};
            //tTD.tableWidth=table.offsetWidth;
         };
         
         table.rows[0].cells[i].onmouseup=function () {
             //结束宽度调整
             if (tTD==undefined) {
                 tTD=this
            };
            tTD.mouseDown=false;
            tTD.style.cursor='default';
         };

         table.rows[0].cells[i].onmousemove=function () {
             //更改鼠标样式
             if (event.offsetX > this.offsetWidth - 10){
                this.style.cursor='col-resize';
             }else{
                this.style.cursor='default';
             };
                 
            //取出暂存的Table Cell
             if (tTD==undefined) {tTD=this};
            //调整宽度
             if (tTD.mouseDown !=null && tTD.mouseDown==true) {
                 tTD.style.cursor='default';
                 if (tTD.oldWidth + (event.x - tTD.oldX) > 0){
                    tTD.width=tTD.oldWidth + (event.x - tTD.oldX);
                    //调整列宽
                    tTD.style.width=tTD.width;
                    tTD.style.cursor='col-resize';
                 //调整该列中的每个Cell
                    table=tTD;
                 }
                  
                while (table.tagName !='TABLE') {table=table.parentElement};
                for (let j=0; j <  table.rows.length ; j++) {
                    table.rows[j].cells[tTD.cellIndex].width=tTD.width;
                }
                //调整整个表
                // table.width=tTD.tableWidth + (tTD.offsetWidth-tTD.oldWidth);
                // table.style.width=table.width;
             }
         };
     }

</script>

现有的代码可以复制到本地运行,直接得到图一的效果;把文中注释的部分的代码释放,就是得到图二。有兴趣的可以自行研究哦!

evExpress官方技术团队预计在11月发布HTML/Markdown 编辑器 (v21.2) 的下一个主要版本,此次更新将包括以下的新特性/功能:

DevExtreme Complete Subscription官方最新版免费下载试用,历史版本下载,在线文档和帮助文件下载-慧都网

表格支持的增强功能

支持表格调整大小

v21.2允许开发人员调整在HTML/Markdown编辑器中显示的表格大小,要启用此新功能,请将tableResizing.enabled属性设置为 true。您还可以使用tableResizing.minColumnWidth和tableResizing.minRowHeight属性限制最小列宽和行高:

Angular

<dx-html-editor>
<dxo-table-resizing
[enabled]="true"
[minColumnWidth]="70"
[minRowHeight]="30">
</dxo-table-resizing>
</dx-html-editor>

Vue

<DxHtmlEditor>
<DxTableResizing
:enabled="true"
:min-column-width="70"
:min-row-height="30"
/>
</DxHtmlEditor>

React

<HtmlEditor>
<TableResizing
enabled={true}
minColumnWidth={70}
minRowHeight={30}
/>
</HtmlEditor>

jQuery

$(function() {
$("#html-editor").dxHtmlEditor({
tableResizing: {
enabled: true,
minColumnWidth: 70,
minRowHeight: 30
}
});
});

表格单元格中的多行文本

在v21.2中,HTML/Markdown 编辑器增加了对表格单元格内多行文本的支持,要添加新行,用户只需按 Enter 键即可。

表格上下文菜单

表格单元格现在包括一个带有常用表格操作命令的上下文菜单,以前这些命令是使用工具栏控件执行的,此上下文菜单的引入允许您为其他控件/命令释放工具栏空间。

要激活上下文菜单,请将tableContextMenu.enabled属性设置为 true。 您还可以使用 tableContextMenu.items 数组重新排列或隐藏菜单命令:

Angular

<dx-html-editor>
<dxo-table-context-menu
[enabled]="true">
<dxi-item name="tableProperties"></dxi-item>
<dxi-item name="cellProperties"></dxi-item>
</dxo-table-context-menu>
</dx-html-editor>

Vue

<DxHtmlEditor>
<DxTableContextMenu
:enabled="true">
<DxItem name="tableProperties" />
<DxItem name="cellProperties" />
</DxTableContextMenu>
</DxHtmlEditor>

React

<HtmlEditor>
<TableContextMenu
enabled={true}>
<Item name="tableProperties" />
<Item name="cellProperties" />
</TableContextMenu>
</HtmlEditor>

jQuery

$(function() {
$("#html-editor").dxHtmlEditor({
tableContextMenu: {
enabled: true,
items: [ "tableProperties", "cellProperties" ]
}
});
});

支持表格标题

新版本改进了表格标记处理算法,现在支持表格标题 (<thead>)。

要添加标题行,最终用户可以单击Insert Header Row工具栏按钮,使用以下代码将按钮添加到工具栏:

Angular

<dx-html-editor>
<dxo-toolbar>
<dxi-item name="insertHeaderRow"></dxi-item>
</dxo-toolbar>
</dx-html-editor>

Vue

<DxHtmlEditor>
<DxToolbar>
<DxItem name="insertHeaderRow" />
</DxToolbar>
</DxHtmlEditor>

React

<HtmlEditor>
<Toolbar>
<Item name="insertHeaderRow" />
</Toolbar>
</HtmlEditor>

jQuery

$(function() {
$("#html-editor").dxHtmlEditor({
toolbar: {
items: [
// ...
"insertHeaderRow"
]
}
});
});

或者,用户可以从新引入的表格上下文菜单中选择插入标题行命令。

表格/单元格外观定制

新的弹出对话框允许用户根据要求修改表格和单元格属性。

可以更改下表属性:

  • 外边框(样式、粗细、颜色)
  • 宽度和高度
  • 对齐
  • 填色

单元格支持以下属性:

  • 外边框(样式、粗细、颜色)
  • 宽度和高度
  • 填色
  • 内容对齐(垂直和水平)
  • 填充(垂直和水平)

HTML/Markdown 编辑器将相应的属性和样式保存在输出标记中,并且可以在输入标记中指定它们时对其进行解析。

支持软换行

添加了在块元素(列表、表格、引号)中插入换行符的功能,要开始新行,用户必须使用 Shift + Enter 组合键,将 true 分配给 allowSoftLineBreak 属性以启用此功能:

Angular

<dx-html-editor
[allowSoftLineBreak]="true">
</dx-html-editor>

Vue

<DxHtmlEditor
:allow-soft-line-break="true">
</DxHtmlEditor>

React

<HtmlEditor
allowSoftLineBreak={true}>
</HtmlEditor>

jQuery

$(function() {
$("#html-editor").dxHtmlEditor({
allowSoftLineBreak: true
});
});

DevExtreme

DevExtreme拥有高性能的HTML5 / JavaScript小部件集合,使您可以利用现代Web开发堆栈(包括React,Angular,ASP.NET Core,jQuery,Knockout等)构建交互式的Web应用程序。从Angular和Reac,到ASP.NET Core或Vue,DevExtreme包含全面的高性能和响应式UI小部件集合,可在传统Web和下一代移动应用程序中使用。 该套件附带功能齐全的数据网格、交互式图表小部件、数据编辑器等。