Uipath & Vb.Net
mystert
这个作者很懒,什么都没留下…
展开
-
Uipath datatable group by归类合并相加
查阅参考 :https://zhidao.baidu.com/question/373715544347612924.html我们有一个表:图一问题:我们想把同一Date 而且 同一 Code的Hour相加合并,例如这里我们需要把 Date为2021-09-27 Code为aa的Hour合并相加,所以Date 为 2021-09-27 Code 为 aa 的Hour 相加后为 6,合并后相当于以下效果:图二分析思路:利用group by可以合并 以Date和Cod原创 2022-02-08 15:55:54 · 2190 阅读 · 0 评论 -
Vb.net/Uipath Excel Calculate 命令空间冲突
今日发现项目组提交的xlsm文件中 单元格用到了命令空间,以往这个单元格都是有公式的:以往没有命令空间(有公式)下Uipath -- invoke code都可以读取到,CODE:Dim xlPackage As ExcelPackage = New ExcelPackage(New IO.FileInfo(sDebtorAndWIPPeriodPath))Dim sheet As ExcelWorksheet = xlPackage.Workbook.Worksheet原创 2021-07-08 23:00:36 · 307 阅读 · 0 评论 -
Vb.net/Uipath double类型运算
发现两个double类型(两个数值是一样的)相减,所得出的值不是0:Now的值:Before的值:两个一样的值相减:结果是-4.33680868994202E-19因为cdbl是采用二进制的形式表示的,我们尝试用tostring(“E”)表示:所以二进制的形式其实是减不尽的,当进行double类型运算这边有两个解决方案:方案一(不推荐):采用Math.Round,但是要知道保留多少位...原创 2021-06-21 21:37:27 · 1660 阅读 · 1 评论 -
Vb.net/Uipath CType 转换数组
今天发现某一列取到的类型是CType, 因为获取的是 [] , 因为uipath表示数组的形式都是(), 所以在uipath里面我们使用CType 转换的时候在后面加()来代表数组:如果需要需要第一个元素都是objUserValueArr(0), 多于一个元素使用for each合并或者其他操作...原创 2021-06-05 11:33:53 · 446 阅读 · 0 评论 -
Vb.net/Uipath Data Table Clone(只保留表的格式, 列名)
例如我只想保留表的A2到M2的标题列名, 这时候可以用Clone:可以看到这时候的dtTitle是没有行的只有列名原创 2021-06-01 23:56:39 · 364 阅读 · 0 评论 -
Vb.net/Uipath Merge Data Table多列
如果尝试Merge Data Table的时候source table比destination table多列:source:destination:选择的merge:合并后:多了很多source的列,如果我们不需要可以在merge的时候选择ignore:原创 2021-05-26 23:50:35 · 924 阅读 · 0 评论 -
Vb.net/Uipath DataTable 分离DataTable
类似这个DataTable,如果我们只想获取第二行到第四行作为DataTable:自己写的方法:dt_Rank.Rows.Cast(Of System.Data.DataRow).Where(function(r) dt_Rank.Rows.IndexOf(r) < 3).copytoDatatable()网上查到的:dt_Rank.Rows.Cast(Of System.Data.DataRow).Take(3).copytoDatatable()https:/...原创 2021-05-26 23:49:59 · 455 阅读 · 0 评论 -
Vb.net/Uipath DataTable 中间插入列
先读取Excel需要加入的列:col =dt.Columns.Add("new col",System.Type.GetType("System.Object"))这边也是使用invoke method(不需要返回值的函数),参数:这边插入的是第二列最后write range输出Excel...原创 2021-05-26 23:49:19 · 664 阅读 · 0 评论 -
Uipath/Vb.net DataTable拿某一行的行数
假如一个表有好多个taget:我们要拿Southern CN和KDC之间的Target的行数思路:我们先拿Southern CN的行数,然后拿KDC的行数dt.Rows.IndexOf(dt.Rows.Cast(Of System.Data.DataRow).Where(Function(r) r(3).ToString.StartsWith("Target") And dt.Rows.IndexOf(r) > iSCN And dt.Rows.IndexOf(r) &l...原创 2021-05-26 23:48:44 · 1191 阅读 · 0 评论 -
Vb.net/Uipath DataTable 中间插入行
首先插入行可以写一个assign to 看看:参数是row和插入位置然后使用invoke method(不需要返回值的函数):nRow是我们创建的新行nRow(0)是第一列,我这边填写当天invoke Method参数:对应写入DataRow和位置就可以,之后可以write range查看结果...原创 2021-05-26 23:48:11 · 508 阅读 · 0 评论 -
Vb.net/Uipath 关于Read Range Title非第一行
今天发现一张表是这样的,如果read range的时候不填Range :那么这张data table默认开始是找第一个有数值的单元格作为Title,也就是C2如果write range写了A1,这个时候就会错位:原来的C3去了C2,C2去了C1,全部往上跑一格了。解决办法1:读表的时候Range写上A1,这样读的表就是从A1开始的:解决办法2:读表的Range不填,写表的时候Range写上A2,因为读的表就是从A2开始的,写表也...原创 2021-05-26 23:47:41 · 318 阅读 · 0 评论 -
Vb.net/Uipath DataTable 时间转换
从read range读到的DataTable都是Object格式,如果需要判断日期就要Conver.ToDateTime()Convert.ToDateTime()原创 2021-05-26 23:46:37 · 377 阅读 · 0 评论 -
Uipath/Vb.net 改DataTable某一行的某一列的值
类似46行的37.Ticket信息更新的提醒,A列Title是C_KEY, 我们要修改B列(Title 为 CONTENT)的值为abc'获取到row后,我们直接row("CONTENT") = "abc"就可以修改这列这行的值了Output:原创 2021-03-15 23:50:36 · 1879 阅读 · 0 评论 -
Uipath Share Point时间日期转换(zhifei项目)
要确定Excel B18这个单元格是否是日期其实可以点一下上面的Custom,然后点Short Date 和 Long Date切换,如果会变换日期其实就是日期格式,我这里因为点Short Date还是Long Date都是不会切换,所以这个其实是一个Text,导致在Upload Share Point(在Share Point是日期格式的首次联系会议组织者时间)的时候虽然没报错,但是也没更新到Share Point上最后通过转换日期格式就...原创 2021-02-03 21:27:23 · 495 阅读 · 0 评论 -
Uipath 调用Vbs(含传递参数和返回值)
首先Uipath.System.Activities和Uipath.UIAutomation.Activities需要分别升级到最高版本(因为最高版本才有Invoke Vbscript):然后在下写上VBScript:Wscript: Vbscript自带,相当于Excel的ThisWorkbookWscript.Arguments:用于接收从Uipath传递的参数Wscript.Arguments.Count:查看从Uipath传递了多少个参数Wscript....原创 2021-01-26 21:50:42 · 1726 阅读 · 0 评论 -
Vb.net Regex所有返回结果合并(Join)
Matches 里面的内容:"[\u4e00-\u9fa5]" 是匹配中文每一个matchCol的子项都是matchCol.Value, 合并的话可以写:原创 2020-11-15 10:28:25 · 307 阅读 · 0 评论 -
Uipath DataTable 指定位置添加列
原始Data Table:这里使用SetOrdinal方法,添加列后把列往前放:Parameters(这里我们把新增的Column "Subject 5"插到第三列):result:当然,举一反三,我们也可以不Add Column的情况下把最后一列往前放,例如:参考Vb.net:https://www.cnblogs.com/dwuge/p/5261003.htmlhttps://blog.csdn.net/liehuo...原创 2020-09-23 23:16:10 · 3796 阅读 · 1 评论 -
Uipath Array Index获取数组成员index 删除列
在DATATABLE里面,可以把Column加入到Array并删除某一列,具体做法:Cols为所需列,可以用大括号定义:这里的Array.IndexOf(Cols,XXX) 如果数组成员XXX存在于数组Cols, 就会返回该数组成员的index...原创 2020-08-22 14:53:35 · 919 阅读 · 0 评论 -
Uipath/Share Point caml 查询带时间的日期型数据
CAML查询日期需要加IncludeTimeValue='TRUE'我想查一个按日期包括时间的日期段的数据查询,在创建一个CAML查询时,出现的结果总是不能精确到小时,分钟,在google上作了查询,得到结果是<Geq> <FieldRef Name='EmailDate' /> <Value IncludeTimeValue='TRUE' Type='DateTime'>2008-11-06T01:00:00Z</Value> <...原创 2020-08-02 19:40:06 · 299 阅读 · 0 评论 -
Uipath/Vb.net 正则replace isMatch 不区分大小写IgnoreCase
isMatch如:System.Text.RegularExpressions.Regex.IsMatch(str, "^(\d{2}\/){2}\d{4}$")replace如:System.Text.RegularExpressions.Regex.Replace(str, "(上|下)午", "").Replace(" ", " ").TrimIgnoreCase如:System.Text.RegularExpressions.Regex.IsMatch(str, ".原创 2020-07-05 23:46:11 · 1022 阅读 · 0 评论 -
Uipath/Vb.net GetTempPath | isNullOrWhiteSpace isNullOrEmpty
Path.GetTempPath引用 System.IO.Path.GetTempPathisNullOrWhiteSpace和isNullOrEmpty的区别isNullOrWhiteSpace可以判断包含多个空格,tab符等 都是TrueisNullOrEmpty只可以判断空白和Null类似是False类似是False...原创 2020-07-05 23:44:52 · 412 阅读 · 0 评论 -
Uipath read range小贴士
因为真正读取行数不在第二列,所以read range不勾选header今天发现这个Excel文件因为单元格A1不填写内容的话,每一列会跟excel默认列一样:也就是说原来A列为row.ItemArray(0).tostring,现在变为row.ItemArray(1).tostring,也就是说A列是真的第一列,解决也很简单,在A1单元格随便写一个英文就可以了(不和其他列头名称一样)...原创 2020-07-05 22:57:05 · 2034 阅读 · 0 评论 -
(转)Vb.net/Uipath 各坏境变量大全
转载自:https://blog.csdn.net/mynote/article/details/39024655%USERPROFILE%可以帮助你获取WINDOWS下当前用户路径。以前曾用 GetWindowsDirectory、GetSystemDirectory、GetTempPath 等函数获取系统常用文件夹;也用过 SHGetSpecialFolderLocation、SHGetPathFromIDList 函数获取过更多常用路径;但这都不如用 GetEnvironmentV..原创 2020-06-29 23:43:55 · 521 阅读 · 0 评论 -
Uipath 安装Chrome插件
正常安装:点Chrome,然后出现:但是我的电脑不知道什么原因UIPATH安装不了,这时候可以在一个安装正常的电脑找到external_extensions.json,直接拉到要安装的Chrome(建议先把Chrome update到最新版,可以在Chrome点Help -- Abount Google Chrome 就会自动更新)一次拉进去不行,不断重启浏览器拉进去 ,直接出现:点details然后选:重启Chrome就可以Ui'path操控Goog...原创 2020-06-29 23:45:12 · 3047 阅读 · 2 评论 -
Vb.net/Uipath 英文首字母大写
a = system.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(sVar)原创 2020-06-29 23:49:23 · 648 阅读 · 0 评论 -
Uipath About Window和Browser的区别
Window通常是最大的一个父类,例如IE浏览器:而Browser是指具体到每个网页,例如:红色框的都是Brwser,所以使用Attach Broser需要选的SELECTOR是红色框内的原创 2020-06-29 23:49:44 · 855 阅读 · 0 评论 -
Vb.Net Invoke Code try Catch
TrysGetTxt = Strings.Trim(sInfoDetials.Substring(Strings.InStr(sInfoDetials,sTempStartPoint) + Strings.Len(sTempStartPoint) -1, Strings.InStr(sInfoDetials,sTempEndPoint) - Strings.InStr(sInfoDetials,sTempStartPoint)- Strings.Len(sTempStartPoint) -1)).Rep原创 2020-06-29 23:44:27 · 353 阅读 · 0 评论 -
Uipath/Powershell Uipath传入Powershell DataRows
因为Uipath调用Powershell的时候不能传入System.Collections.Generic.IEnumerable<System.String>,可以把它转换为数组:Powershell:原创 2020-06-07 10:57:58 · 415 阅读 · 0 评论 -
Uipath/Vb.net 关于表中含有公式需要刷新
今天遇到一个Excel:因为里面是有公式的,所以读出来的数据不一定准确这时候我们可以加上xlPackage.Workbook.Calculate()因为OfficeXML读法跟Powershell Com Object读法不一样Com Object读法是打开一个Excel,需要电脑安装Office(Excel)组件,而OfficeXML是不需要安装Office的...原创 2020-06-07 10:56:49 · 494 阅读 · 0 评论 -
Uipath/Powershell 获取Split最后值
Uipath:system.DateTime.ParseExact(r("Send Email Day(L1)").ToString.Split({";"}, StringSplitOptions.None).Last,"yyyy-MM-dd HH:mm:ss",Nothing){";"}是数组的意思Powershell:同理@(",")也是是数组的意思[System.StringSplitOptions]::RemoveEmptyEntries表示如果碰到空白的..原创 2020-06-07 10:56:08 · 1240 阅读 · 0 评论 -
Uipath Linq 并行判断(and)的问题
因为项目需要,有些DataTable需要判断 D列是非No RPA(需要是时间)是否超过24小时,开始我试这样写的:dt_TicketNo.Rows.Cast(Of System.Data.DataRow).Where(Function(r) r("Receive Day(L1)").ToString = "" And r("Send Email Day(L1)").ToString <> "Non RPA" And(system.DateTime.Now - system.Da..原创 2020-06-07 10:53:36 · 698 阅读 · 0 评论 -
Uipath 框架内限制寻找Find Element Matches
因为项目需求寻找并判断 √ 这个IMAGE,用IMAGE EXIST不能判断,因为右边还有√Data和√No Index这个程序因为是分框架显示的,我们不要直接用最大的框架去捕捉窗口,即不要用:<wnd app='idea.exe' cls='XTPMainFrame' title='CaseWare IDEA - A23202-Items to be tested.IDM' /> (这是最大的框架)我们通过搜索子框架:<wnd app='idea.exe' c..原创 2020-06-07 10:52:09 · 2192 阅读 · 0 评论 -
Uipath调用Inject js实例
因为公司网站有蓝色的这个OAK的框挡住,我们想隐藏它,这边可以查看网页属性可以发现这个网页的class name是bodyheader animated , 我们试试右键ADD ATTRIBUTE:因为隐藏的英文是hidden,我们大胆猜测就是hidden = 0(hidden = false)成功,上面已经变为白色,说明hidden = 0可行,我们用Uipath实现:参数sClassName 为bodyheader animated,然后插入在at...原创 2020-06-07 10:51:33 · 2412 阅读 · 1 评论 -
Uipath调用Inject js关于UiAutomation版本问题
Uipath调用Inject js一定要把Uipath.UIAutomation.Activities升级到19版本以上,不然用不了:原创 2020-06-07 10:50:38 · 618 阅读 · 0 评论 -
Uipath IDX Find Element 直到找到
这里因为某些网页(IBS)的SELECTOR虽然存在(当然也不是我们要找的目的ELEMENT),因为是隐藏的ELEMENT,所以其实是没有坐标,这里可以是通过加INDEX的方法查找是否存在有坐标的ELEMENT,进而点击:...原创 2020-02-29 10:57:51 · 995 阅读 · 0 评论 -
Uipath List Clear
今天发现在Distinct后居然还有重复的LIST,原来是因为LIST变量设置了全局变量(而且用完也没有CLEAR,导致不断加入)...以后一定要无论哪个变量能够设置局部变量千万不要设置全局变量或者写CLEAR(不建议):...原创 2020-02-29 10:56:46 · 540 阅读 · 0 评论 -
uipath ReadDataTable 慢的原因分析
读DATA TABLE的时候:发现这个表非常慢,查看结果后发现下面的有几行因为是整行都HIGH LIGHT了颜色,这边如果只是规定例如A列到AB列是黄色这样是不是慢的,但是如果整行都HIGH LIGHT颜色的话会DATA TABLE的USED RANGE就会非常大...原创 2020-02-29 10:56:13 · 653 阅读 · 0 评论 -
Uipath/Vb.net String.Format补全0
在Uipath有时候我们需要输出像 002, 028 这样的数字,但是我们只有 2, 28 ,这时候我们可以这样做:String.format(2,"000")String.format(28,"000")原创 2020-02-19 18:36:40 · 2223 阅读 · 0 评论 -
Uipath Invoke Code 判断某单元格为空
Dim xlPackage As ExcelPackage = New ExcelPackage(New IO.FileInfo("C:\Users\jtang20\Desktop\test.xlsx"))Dim sheet As ExcelWorksheet = xlPackage.Workbook.Worksheets("Sheet1")If sheet.cells("H9").valu...原创 2020-01-29 22:02:38 · 1687 阅读 · 0 评论 -
Uipath 查询下载DLL文件教程
今天网上搜索下载DLL文件,发现POWERHSELL都是用不了,隔壁大神教在UIPATH直接下,而且95%以上可以用:这边以"PDFLibNet.dll" 为例在UIPATH搜索PDFLibNet:选中然后点install -- Save,完成自动安装,然后在本地找到:至此,可以利用POWERSHELL加载PDFLIBNETBINGO!!!...原创 2019-10-30 11:46:30 · 671 阅读 · 0 评论