Tag: vba

乘以不是空白的单元格

我需要将列B中的数量与其他列中的数值相乘,如果它们不是空白,则按行排列($ B3 * Row,Col)。 我知道我可以用VBA做到这一点,但我不能得到一个将乘法和检查空白单元格的方法。 最后一行只是在每列中总结数字。 我尝试了一个function,并把它放在一个子,但我没有运气。 我附上了一张照片。 谢谢!

显示一行数据

当我search组织代码时,我需要从Excel电子表格中的一行数据来显示。 我可以得到一个单元格显示,但不是信息的行。 如果组织不匹配任何文件,则会显示一条错误消息。 这是我到目前为止: Option Explicit Sub findData() Dim GCell As Range Dim Txt$, MyPath$, MyWB$, MySheet$ Dim myValue As String Txt = InputBox("What Organization do you want to search for?") MyPath = "C:\users\DKane\My Documents\" MyWB = "EVHC Master Hiring Spreadsheet range find.xlsx" MySheet = ActiveSheet.Name Application.ScreenUpdating = False Workbooks.Open Filename:=MyPath & MyWB Set GCell […]

将不相邻的Excel列拆分为不相邻的Word表格列

想从Excel中复制三个范围的数据,然后将这三个不同的范围粘贴到现有的Word表格中。 Word文档是从另一个程序生成的,文件名称每次都不相同。 我需要拆分三个范围,并粘贴到单词表(1),但在列不匹配的Excel副本。 当前进程是复制一个Excel范围,alt + tab到Word文档并粘贴到表中,重复剩下的两个范围。 这是我的复制代码,但我需要“粘贴”的帮助。 Sub Copy_CV() Dim MaxVal As Long, C As Long MaxVal = Worksheets("Prop").Application.Max(Columns(2)) C = MaxVal + 3 Worksheets("Prop").Range("G4:G" & C).Select Worksheets("Prop").Range("L4:L" & C).Select Worksheets("Prop").Range("M4:M" & C).Select Selection.Copy End Sub

VBA – replace在某些单元格中不起作用

我使用从数据库中提取的一些数据。 在一列中,我有一组格式为dd.mm.yyyy的数据。 我正在使用下面的行来尝试将这些值转换为dd / mm / yyyy格式为date。 .Range(Columns(j), Columns(j)).Replace What:=".", Replacement:="/" .Range(Columns(j), Columns(j)).NumberFormat = "dd/mm/yyyy" 执行代码之后,所有replace都完成了,并且这些单元格按date格式化,但有些值是左alignment的,有些则是右alignment的。 当我在这个列中激活filter时,有些值每年都不正确(下面的截图)。 当我去一个似乎没有工作的值(例如,截图的第一个13/01/2015),它是左alignment的。 然后,如果我双击单元格,然后按回车,单元格变成右alignment。 我已经在这些单元格中寻找额外的字符(例如空格),但没有find任何东西。 你对这个问题有什么想法吗? ps:对不起我英语不好,我来自巴西(:

search选定的单元格,如果它们包含字母,则隐藏它们

我想通过单元格循环查找字母。 如果它们包含该字母,则使用NumberFormat隐藏单元格。 这工作,但我如何使这个循环toggeable,所以我可以隐藏/取消隐藏。 Private Sub CommandButton1_Click() Dim rng As Range, cell As Range Set rng = Range("D5:F35,D43:F73,J5:L35,J43:L73,P5:R35,P43:R73,V5:X35,V43:X73,AB5:AD35,AB43:AD73,AH5:AJ35,AH43:AJ73") For Each cell In rng If InStr(1, cell.Value, "A") > 0 Then cell.NumberFormat = ";;;" If InStr(1, cell.Value, "B") > 0 Then cell.NumberFormat = ";;;" If InStr(1, cell.Value, "C") > 0 Then cell.NumberFormat = ";;;" If InStr(1, cell.Value, […]

Excel VBA – 检查是否存在更新的.xlsm

你能帮我解决这个问题吗? 我有分布在公司的.xlsm文件。 每个公司成员都有一个应付方式,并有权访问networking驱动器上的相同文件夹(例如V:/ Excel / Apps)我发现了一个小function来检查文件是否存在: Function fileExists(s_directory As String, s_fileName As String) As Boolean Dim obj_fso As Object Set obj_fso = CreateObject("Scripting.FileSystemObject") fileExists = obj_fso.fileExists(s_directory & "\" & s_fileName) End Function 但我真的不知道如何检查相同名称的文件是否更新。 我可以直接在文件名中使用版本,但它不能解决我的问题,因为我的例如excelApp_0.1.xlsm无法知道,如果较新的search版本将是v0.2或0.8或1.6。 你有什么build议吗?

许多button(userform)控制一个单独的macros,根据select打开不同的用户表单

我创build了一个小的excel表单来更新数据库。 工作很好,虽然工作人员做了奇怪的事情,必须用一个干净的版本每周更换Excel。 所以我想创build更新Excel表(DutySelection)的用户forms。 我有很多button(用户窗体)A4:A31将控制一个单独的macros,打开3个不同的用户forms取决于B4:B31下拉列表select 目前我的代码只能从B4工作,无论我点击哪个button。 EG:B4select开始,开始表格打开。 B6select完成,“开始”窗体打开 Sub Duty() If Sheets("DutySelection").Range("B4,B31") = "Start" Then frmStart.Show ElseIf Sheets("DutySelection").Range("B4,B31") = "Duty Type" Then ReportUpdate.Show Else: Sheets("DutySelection").Range("B4,B31") = "Finish" 'Then frmFinish.Show End If End Sub 我在想,我错过了一两行,但只是不能find我所需要的在线

隐藏没有价值的行

我正在尝试隐藏不具有值VBA的行的解决scheme 代码(不适用于我): Dim rowRange As Range BeginRow = 2 'Start after Master Menu item EndRow = 252 'Filter all rows in sheet (about 730) ColumnsWithValues = 0 'Counter for number of columns in a row that have a value. If 0, hide the row. ColumnStart = 2 'Start where you have group values ColumnEnd = […]

开放的前景与Excel 2010 vba和发送电子邮件

在下面的excel 2010 vba我试图发送一封电子邮件,如果outlook是closures的。 我得到确认电子邮件发送,但没有发送。 如果outlook是没有问题的,但并不总是如此。 谢谢 :)。 Option Explicit Private Sub CommandButton21_Click() Dim OutApp As Object Dim OutMail As Object Dim strbody As String Dim oOutlook As Object On Error Resume Next Set oOutlook = GetObject(, "Outlook.Application") On Error GoTo 0 If oOutlook Is Nothing Then Set oOutlook = CreateObject("Outlook.Application") End If strbody = "Hi […]

dynamic创build集合VBA的集合

我试图dynamic创build一个集合嵌套在集合。 到目前为止,我已经能够通过input一切来创build一个嵌套集合(见下文)。 但是,我有一个( 可怕的 )电子表格,其中一列有17个问题的重复数百次,下一列有答案。 我试图把每个问题的答案作为一个项目,而问题本身作为索引。 这17个问题的唯一集合将是整个电子表格集合中的一个集合。 如果没有任何意义,可以考虑为集合中的每个项目添加一个集合。 以下是手动input的集合的集合: 谢谢! Sub test() Dim M As New Collection Dim nst3 As New Collection Dim nst2 As New Collection Dim nst1 As New Collection Dim i As Integer Dim ii As Integer nst1.Add "A", "1" nst1.Add "B", "2" nst1.Add "C", "3" nst1.Add "D", "4" nst2.Add "E", "1" […]