精华内容
下载资源
问答
  • 下拉自动填数
    千次阅读
    2020-12-28 17:00:27

    一、需求

    根据下拉选中之后,自动补全下一格内容,然后第三级根据补全内容,自动获取下拉内容。

    二、实现

    隐藏第二列,通过第一列下拉选中之后,填补第二列值,第三类根据第二列的值,从名称管理器中获取引用。

    三、问题

    • 1.如何自动填充第二列的值
    • 2.如何根据第一列填充对应的值
    • 3.如何解决没有搜索到对应的值,如何设置单元格内容,避免NA。

    四、解决

    本来想通过下拉数据有效性设置默认值,但是POI没有实现效果,后来通过VLOOK函数实现,优势就是,可以跨页面搜索值,将对应填充的值,填在隐藏sheet中。
    在这里插入图片描述

    更多相关内容
  • 2 先把数据填充到datatale表(内存中的数据表), 我是手动进去的.大家也可以从SQL取出数据赋给datatable表 3 实现的模糊查询, 是直接从内存中查询, 从SQL库中查或从内存中查, 我觉得后者最好. 因为客户端多 的时候, ...
  • 针对不同的网页元素控件,详细讲述使用不同的方法自动填写。在浏览器里就可以实现,不需要另外安装软件。自动填表方案放在软件收藏栏,使用时就像打开一个网址一样简单。
  • 本框内个1,这些值都写在隐藏域了。代码里可以看到,用户输入包含在里面的时候,可以按ENTER键选中.
  • 在我们平台中有这样的一个功能,设置了数据字典就可以使下拉框自动选择数据的类型,但是有一点不足的地方就是没有默认值,现在我要做的就是如何实现这个有默认值的下拉框。还是有日期来举例。如图所示功能: (1)...

    在我们平台中有这样的一个功能,设置了数据字典就可以使下拉框自动选择数据的类型,但是有一点不足的地方就是没有默认值,现在我要做的就是如何实现这个有默认值的下拉框。

    还是有日期来举例。如图所示功能:

    0818b9ca8b590ca3270a3433284dd417.png

    (1)esayui-combobox方法:

    在页面设置一个esayui-combobox控件,通过设置data-options="valueField: 'id', textField: 'text'来设置我们想要的数据和顺序,通过'selected':true来设置默认值。

    data:[{ 'id':'0','text':'01','selected':true},

    { 'id':'1','text':'02'},

    { 'id':'2','text':'03'},

    { 'id':'3','text':'04'},

    { 'id':'4','text':'05'},

    { 'id':'5','text':'06'},

    { 'id':'6','text':'07'},

    { 'id':'7','text':'08'},

    { 'id':'8','text':'09'},

    { 'id':'9','text':'10'},

    { 'id':'10','text':'11'},

    { 'id':'11','text':'12'},]" />

    (2)select option方法

    esayui-combobox方法也有点缺陷,没有灵活能默认当月,只能在代码中写死一个月份。所有使用传统方法——select option方法去改造了下。

    01

    02

    03

    04

    05

    06

    07

    08

    09

    10

    11

    12

    然后在用js设置一下默认值。

    $(document).ready(function () {

    var myDate = new Date();

    var thisYear = myDate.getFullYear();

    var backYear = (thisYear - 8);

    var option = null;

    thisYear = thisYear + 5;

    for (l = backYear ; l < thisYear; l++) {

    document.getElementById("YEAR").options.add(new Option(l, l));

    }

    //年份

    document.getElementById("YEAR").value = (thisYear - 5);

    //月份

    var thisMonth = myDate.getMonth() + 1;

    var m = thisMonth

    m = m < 10 ? '0' + m : m;

    //var m = thisMonth + "月";

    // alert(thisMonth)

    document.getElementById("MONTH").value = m;

    });

    这样就解决我们平台的下拉框默认值的问题。

    展开全文
  • Qt - QtextBrowser 实现自动下拉滚动

    千次阅读 2020-05-17 17:50:19
    默认情况下,滚动条是不会自动下拉至底部的。也就是说我们新接收到的消息得自己拉动滚动条才能看到。这样的操作非常不友好,得想办法解决它。 实现 实现的思路很简单,当有新数据输入时,QtextBrowser 会有两个信号...

    前言

    最近一直在折腾我的 UHelper,诚如名字所见,它是一个串口调试助手。

    之所以开启这个项目是因为:

    • 目前在 学习QT,直接看 Class文档太无聊,不如找个东西做一下。
    • 很多公司对盗版软件查得比较严,要想找到一个长得好看使用舒心还免费的调试助手是比较难的…为了避免不必要的麻烦,不如自己做一个吧,反正 QT 实现是非常简单的。

    所有源码均托管在 GayHub(可戳) 。目前仍在进一步完善中。

    在消息接收窗口中,每次收到数据都会将数据添加到 QtextBrowser 中。

    若数据较多,则会出现滚动条。默认情况下,滚动条是不会自动下拉至底部的。也就是说我们新接收到的消息得自己拉动滚动条才能看到。这样的操作非常不友好,得想办法解决它。

    实现

    实现的思路很简单,当有新数据输入时,QtextBrowser 会有两个信号:

    一个是 它自身sourceChanged( )
    在这里插入图片描述
    另一个是来自它爸爸 QTextEdittextChanged( )
    在这里插入图片描述

    我们只需要将其中任意一个信号绑定槽函数,在槽函数中实现以下代码即可:

    ui->textBrowser_intput->moveCursor(QTextCursor::End);
    

    存在的问题

    • 目前我使用的绑定 sourceChanged( ) 的方法,但该方法引入了一个问题,即我无法通过鼠标选择QtextBrowser中的文本,仅可通过右键全选。

    • 而使用 textChanged( ) 也存在问题:
      当我在数据定时发送接收时选中部分文字,选中部分文字会被新接收的内容替换掉。这是我不希望看到的。

    目前仍无较好的解决方法,逮着大佬咨询后,大佬说得用自定义控件…留坑。

    展开全文
  • python脚本自动填调查问卷

    千次阅读 2021-05-26 16:41:57
    python脚本自动填调查问卷 参考地址:https://blog.csdn.net/qq_44864262/article/details/106838604?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_baidulandingword-0&spm=1001.2101.3001.4242 ...

    python脚本自动填调查问卷

    参考地址:https://blog.csdn.net/qq_44864262/article/details/106838604?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_baidulandingword-0&spm=1001.2101.3001.4242

    准备

    1、获得调查问卷的网址,我这里用的是腾讯问卷

    2、下载谷歌浏览器

    3、下载对应版本的chromedriver

    ChromeDriver下载地址:http://chromedriver.storage.googleapis.com/index.html

    浏览器打开问卷网页,按F12打开控制台,点击右侧窗口左上角的图标,点击左侧元素查看。
    img1
    点击右侧的标签,右键复制元素的XPath,存下来备用,每个题的不同选项只有很小的差别,因此每个题随便选一个选项复制其XPath即可(依据个人情况)。
    img2

    代码编写

    思路:依据一定的概率生成问卷答案,用循环语句控制chormedriver对浏览器的各种操作,进而达到自动填写问卷的目的。这也可以用来做web测试和其他可以基于浏览器的自动化操作。

    代码分析:

    # 按给定的概率返回一个列表中的值
    def number_of_certain_probability(sequence, probability):
        x = random.uniform(0, 1)
        cumulative_probability = 0.0
        for item, item_probability in zip(sequence, probability):
            # 只有当累加的概率比刚才随机生成的随机数大时候,才跳出,并输出此时对应的值
            cumulative_probability += item_probability
            if x < cumulative_probability:
                break
        return item
    
    # 生成单选题的答案
    def s_answear():
        # 选项的值
        value_list_1 = [1, 2, 3, 4, 5]
        #1、2...单选题各选项的概率
        probability_1 = [0.204, 0.314, 0.428, 0.054]
        probability_2 = [0.171, 0.599, 0.091, 0.139]
    	# probability_n = [...]
        
        probability = [
            probability_1,
            probability_2
            # probability_n
        ]
        s_answear_list = [] # 存放生成的选项
    
        for i in range(5):
            result = number_of_certain_probability(value_list_1[:len(probability[i])], probability[i])
            s_answear_list.append(result)
    
        return s_answear_list
    
    # 生成多选题的答案
    def d_answear():
        # 值
        value_list_2 = [1, 2, 3, 4, 5, 6, 7, 8]
        # 多选题各选项单次被选择的概率(三选和双选)
        answear_num = [3, 2] # 顺序存放每题最多答案数
        null_answear = [0.15, 0.2] # 顺序存放每题答案少选的概率
    
        probability_1 = [0.714 / 3, 0.381 / 3, 0.429 / 3, 0.452 / 3, 0.381 / 3, 0.214 / 3, 0.214 / 3, 0.214 / 3]
        probability_2 = [0.714 / 3, 0.643 / 3, 0.569 / 3, 0.188 / 3, 0.476 / 3, 0.357 / 3, 0.124 / 3]
       probability_3 = [0.633 / 2, 0.442 / 2, 0.26 / 2, 0.49 / 2, 0.071 / 2, 0.033 / 2]
    
        probability = [
            probability_1,
            probability_2,
            probability_3
        ]
        d_answear_list = []
    
        for i in range(5):
            answear = []
            for j in range(answear_num[i]):
                result = number_of_certain_probability(value_list_2[:len(probability[i])], probability[i])
                while (result in answear):  # 使多选的结果不会重复
                    result = number_of_certain_probability(value_list_2[:len(probability[i])], probability[i])
                answear.append(result)
            d_answear_list.append(answear)
    
        # 三选项的概率只选两项,使第三项为0,当选项为0是跳过选择以到达少选的目的
        x = random.uniform(0, 1)
        if x < null_answear[0]:
            d_answear_list[0][2] = 0
        x = random.uniform(0, 1)
        if x < null_answear[1]:
            d_answear_list[1][2] = 0
    
        return d_answear_list
    
    def write(num):
        for i in range(num):
            s_answear_list = s_answear()
            d_answear_list = d_answear()
            print(s_answear_list)
            print(d_answear_list)
    
            driver = webdriver.Chrome()
            driver.get('问卷的链接')
            # 第一个单选题
            driver.find_element_by_xpath(
                '//*[@id="question_q-1-B1GQ"]/div[2]/div[' + str(s_answear_list[0]) + ']/label/p').click()
    
            # 第二个单选题
            driver.find_element_by_xpath(
                '//*[@id="question_q-2-fphY"]/div[2]/div[' + str(s_answear_list[1]) + ']/label/p').click()
    
            # 第一个三选题
            driver.find_element_by_xpath(
                '//*[@id="question_q-4-B7dm"]/div[2]/div[' + str(d_answear_list[0][0]) + ']/label/p').click()
            driver.find_element_by_xpath(
                '//*[@id="question_q-4-B7dm"]/div[2]/div[' + str(d_answear_list[0][1]) + ']/label/p').click()
            if d_answear_list[0][2] != 0:
                driver.find_element_by_xpath(
                    '//*[@id="question_q-4-B7dm"]/div[2]/div[' + str(d_answear_list[0][2]) + ']/label/p').click()
    
            js = "var q=document.documentElement.scrollTop=800"  # 下拉像素(800是基于最顶端测算的距离)
            driver.execute_script(js)  # 执行下拉像素操作
    
            # 第二个三选题
            driver.find_element_by_xpath(
                '//*[@id="question_q-5-HC0e"]/div[2]/div[' + str(d_answear_list[1][0]) + ']/label/p').click()
            driver.find_element_by_xpath(
                '//*[@id="question_q-5-HC0e"]/div[2]/div[' + str(d_answear_list[1][1]) + ']/label/p').click()
            if d_answear_list[1][2] != 0:
                driver.find_element_by_xpath(
                    '//*[@id="question_q-5-HC0e"]/div[2]/div[' + str(d_answear_list[1][2]) + ']/label/p').click()
    
            # 第一个双选题
            driver.find_element_by_xpath(
                '//*[@id="question_q-7-G2IG"]/div[2]/div[' + str(d_answear_list[3][0]) + ']/label/p').click()
            driver.find_element_by_xpath(
                '//*[@id="question_q-7-G2IG"]/div[2]/div[' + str(d_answear_list[3][1]) + ']/label/p').click()
    
            js = "var q=document.documentElement.scrollTop=3600"
            driver.execute_script(js) # 下拉操作
    
            # 提交按钮
            driver.find_element_by_xpath(
                '//*[@id="root-container"]/div/div[1]/div[2]/div[2]/div[5]/div/button/span').click()
            print('第' + str(i) + '次填写成功')
            driver.quit()
    

    运行

    执行write(n)调用函数,n为需要自动填写的次数。

    展开全文
  • LI自动添加数字序号

    千次阅读 2021-07-22 03:08:53
    LI自动添加数字序号,完全使用CSS自己的属性方法来实现,代码中一共演示了三种序号风格,一种是阿拉伯数字风格,还有大写序号风格,另外还有带竖线的序号风格,向大家介绍如何用CSS自动为内容增加序号的功能,非常...
  • 我知道在Stack Overflow上有很多这样的问题,但我真的需要一些与我正在做的...到目前为止,如果我选择特定的供应商,我可以将其自动输入到名称,电子邮件和电话号码字段中。但是,我希望在文本字段中输入不同的属...
  • 项目中拥有充值和提现页面,都会有密码输入框,但是登录所记住的密码 会在password属性的input中下拉显示 而且会自动填入,客户要求 不能自动填入和下拉显示记忆, 所以我就在百度中各种搜索,可是都没有太满意的 ...
  • 我想要计算每天的总花销并在最后一列,当数据量比较大的时候,你总不能一个一个吧,因为中间有合并的以及非合并的单元格,直接用E18=SUM(B18:D20)并且自动填充肯定是不行的! 懒人估计都有个共同的特点,对于...
  • 比如各省完成情况,省份进度等,其中不同的情况进度使用不同的颜色标注,这样方便自己和其他审阅者阅读,但是一个个调整颜色太麻烦,而且很容易出错,如果做成根据调整情况进度后,颜色自动变更,就会减少很多工作量...
  • 在Excel中入公式,回车出一行公式结果,但是下拉的时候,却所有行都是和第一行相同的结果如下: 解决办法: Find the calculation option in the formula and change it to automatic 在公式中找到计算选项,...
  • 一、网页下拉列表的自动填写,怎么实现呢?看看需要实现自动填写的下拉列表吧。 所在地区,首先需要选择省,然后才能选择市。我们用网页自动操作通用工具实现。 下面我们来讲讲实现步骤。首先,打开网页...
  • 3:下拉列表。 4:手动输入需要添加的下拉选项,使用+添加。 5:如果后面需要补充选项,要把这个勾选了。 效果如图所示,可以规范填写表格,同时也限制了填写的范围。 如果我们只选中了一个单元格,但是已经把选项...
  • 这个得根据你具体要求来定,假设同从1开始,步长为1的,可以用=row(A1)下拉。如果是从5开始,步长为3的,可以=row(A1)*3+2下拉。可以实现百只不过需要的函数很复杂A列动态数据=INDIRECT("A"&SMALL(IF($A$2:$A$...
  • function AddRow(){ var myTable = tElementById("ctl00_ContentPlaceHolder1_zjjzzTB"); var newRowIndex = ws.... }这是自动新增记录行的代码,里面有一个 怎么给这个html控件从后台自动添加数据。谢谢 展开 全部
  • 3、订单号:自动生成送货单序号[No.2011030001],格式为["No."+"年"+"月"+"当月第N次打印"],每次打开时后四位的值自动递增1,月初自动归0 4、客户名称:可从下拉列表中选择(需要按格式维护好客户信息表) 5、客户...
  • 实现效果如图: 实现关键:picker-view 点击查看实现代码
  • 3.将计算结果填充,及右下角变成十字后下拉 4.对比Ti是否小于一次迭代如果小于做三次迭代,否则一次迭代为最佳选址地址 5.复制一次迭代表(2),计算出坐标 结果 1.直到迭代Ti结果大于上面迭代,否则持续迭代 2...
  • 在 Excel 中,下拉输入的数据时,如果序列比较少,下拉然后选择填充序列就行了。但如果让序列递增到 10000,再手动下拉就显得既耗时效率又低了,有没有什么方法可以直接下拉到指定序列呢 ?
  • check3.select() check3.grid(column=2, row=4, sticky=tk.W) win.mainloop() # 当调用mainloop()时,窗口才会显示出来 补充知识:【tkinter】坑 解决Entry、Label不能修改text、image等属性的问题 tkinter中定义一...
  • 如何解决搜狗浏览器自动填充

    千次阅读 2020-03-11 15:47:48
    我们首先要把改成,这样就可以避免页面被自动填充,但是输入密码肯定是需要密文显示的,所以还需要加个onfocus事件上去改变input的类型,下面是使用ant design库的Input做的范例: { e.currentTarget.setAttribute("type...
  • 从预配置项目列表中提供一个简单的文本框下拉菜单。 在文本框中键入内容时,此扩展名将显示一个菜单,其中包含“选项”页面中匹配项的列表。这种简洁的扩展设计轻巧,无创且使用直观。请注意:选项设置是使用chrome....
  • 我的excel文档很卡,特别是单元格下拉行动生的时...最简便的方法是换台性能配置高端些的电脑运行该Excel文件。如果没有高性能的电脑,就将本机上不用的程序尽量多的关闭掉之后再运算。excel在输入文字确认时卡顿...
  • VBA实现 Excel自动填充

    千次阅读 2020-05-11 11:07:25
    百次的向下自动填充,手动敲? 简单的VBA代码搞定: Sub 自动填充() Dim i As Integer For i = 2 To 743 If Range("b" & i) = "" Then '此时只循环判断,填充了B列,只需手动更改一下代码中的"b".(下一段...
  • 首先导入selenium和初始化环境 配置库和谷歌浏览器的webdriver的方法步骤 from selenium import webdriver #导入selenium chrome_driver=r"D:\Python\Lib\site-packages\selenium\webdriver\chrome\chromedriver.exe...
  • 我们在使用Excel表格中,经常会遇到这个问题:如下图,学生有1129名,在计算学生分数时,总不能把学生的总分数和平均分数一个一个的进去吧,这样效率太慢。那么有没有什么方法可以一键将Excel表格下拉填充到底呢?...
  • 一丶效果图 二丶概述 RecyclerVIew的上拉加载,下拉刷新网上也有很多,包括github上的开源也有非常好用的,这里整理demo作为一个开始

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 22,213
精华内容 8,885
关键字:

下拉自动填数