小编Cla*_*aus的帖子

Excel 重置“UsedRange”

不知道我错过了什么,但我看到发布的示例似乎不起作用。

我从网络查询导入数据。我将查询设置为在重新查询时清除未使用的单元格。 如此处最后一个单选按钮所示

我使用这些导入的数据来生成可变长度的报告。

但是,如果用户(在我的情况下他们需要这样做)插入行,则 ActiveSheet.UsedRange 将展开。这意味着当执行新查询时,我不能再只执行“Ctrl-End”来查找数据集中的最后一行。

我可以使用 ActiveSheet.UsedRange.Clear 轻松清除任何数据。但是,如果先前的查询生成了 2 或 3 页的报告,则即使数据较少,任何后续查询也将如此长,因为“UsedRange”仍指向最后一行。

显示的示例如下

ActiveSheet.UsedRange
ActiveSheet.UsedRange.Clear
a = ActiveSheet.UsedRange.Rows.Count
Run Code Online (Sandbox Code Playgroud)

不要重置范围。

MS 将 UsedRange 定义为只读属性。

看来需要发生的是“文件保存”以完成操作。

ActiveWorkbook.Save
Run Code Online (Sandbox Code Playgroud)

一篇文章指出,在旧版本的 Excel 中,您还必须关闭工作簿并重新打开它才能完成操作。

我想知道 1. 此行为更改的版本截止日期是多少?2. 是否有其他方法使用 VBA 宏来重置范围?

excel vba

7
推荐指数
2
解决办法
5万
查看次数

如何在php中创建一个空白关联数组

我的 php 脚本将数据返回到 Web 客户端,并由 javaScript 进行处理。

如果找到数据,则将其存储在关联数组/对象中。如果没有找到数据,我想发送一个空白关联数组。

我在网上看到的唯一示例是在手册中创建一个空类,然后从中实例化一个对象。

下面是我的代码以及它在网络客户端产生的结果

            $sql = 'select job, client, project from jobs j left join client c on c.key = j.cKey where j.key='.$this->p['reckey'];
        if ( $result = $db->query($sql) )
        {
            if ($result->num_rows > 0)
            {
                $l = mysqli_fetch_all( $result, $resulttype = MYSQLI_ASSOC );
                $this->res_array['info'] = $l[0];
            }else{
                $this->errors[] = 'No such job # '.$this->p['reckey'];
                $this->res_array['info']=[];
            }
        }else{
            $this->errors[] = 'Query failed!';
            $this->res_array['info']=[];
        }
        $this->res_array['errors'] = $this->errors;
        echo json_encode ($this->res_array);
Run Code Online (Sandbox Code Playgroud)

以下是数据在被 JSON 解码之前到达 Web 客户端时的两个示例。请注意“info”元素中的差异。 …

php

5
推荐指数
1
解决办法
3763
查看次数

如何在javaScript中检测下载完成

我想在一个 javaScript 函数中执行两个操作

  1. 强制下载 csv 文件

  2. 发送 ajax 请求以标记表中已下载记录的记录。

由于这两个操作都会向用户显示提示和对话框,因此我想延迟执行第二个事件,直到第一个事件完成。

当用户打开页面时,他们会看到当前记录的列表。他们检查他们想要处理的记录。然后将检查的记录打包,并向用户呈现下载“保存”或“打开”框。当该操作完成后,ajax 请求应该执行。

我的想法是我可以检测到“a”何时从文档中删除。但我不确定我会怎么做。

这是我的下载代码

    var a = window.document.createElement('a');
    a.href = window.URL.createObjectURL(new Blob(exportArray, {type: 'text/csv'}));
    a.download = 'jobCostHandOff.csv';

    // Append anchor to body.
    document.body.appendChild(a)
    a.click();

    // Remove anchor from body
    document.body.removeChild(a)
Run Code Online (Sandbox Code Playgroud)

javascript

5
推荐指数
1
解决办法
2万
查看次数

在Excel VBscript/VBA中插入行返回

使用Excel v16

我试图通过用回车替换像tilde~这样的字符来格式化单元格中的文本,其中完成的结果将是多行.这实际上是多行和多列的合并单元格,如下所示

这是输入 在此输入图像描述

这是所需的输出 在此输入图像描述

这是我在宏中使用的脚本

Sub FindReplaceAll()
    Sheets("Template").Select
    Range("A34").Select

    iStr = ActiveCell.Value

    For i = 1 To Len(iStr)
        If Mid(iStr, i, 1) = "~" Then
            rtStr = rtStr + vbCr
    Else
        rtStr = rtStr + Mid(iStr, i, 1)
    End If

    Next i

    ActiveCell.Value = rtStr

End Sub
Run Code Online (Sandbox Code Playgroud)

不幸的是,我得到的所有内容都与删除了波形符相同.使用换行文本格式化单元格.不知道从哪里开始.

vbscript excel vba excel-vba

2
推荐指数
1
解决办法
5664
查看次数

标签 统计

excel ×2

vba ×2

excel-vba ×1

javascript ×1

php ×1

vbscript ×1