我想将单元格的值和格式(文本颜色、字体大小、粗体等)从一个工作簿拉入/复制到另一个工作簿。
据我所知,使用标准的单元格引用是行不通的,你需要vba。
下面是一些在同一个工作表中将格式从a3复制到a10的vba代码:
Dim ping As Boolean
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A3")) Is Nothing Then
If ping = False Then
Range("A3").Copy
Range(&
我想写一个VBA,它可以改变以特定单词开头的单元格的颜色(“输入”、“错误”、“使用”、“充电号”)。“错误!输入与材料不匹配”。我对VBA很陌生,也尝试过不同的东西,但每次都被困住了,也会犯错误
“类型错配”。
到目前为止我得到的是:
Sub highlight()
Dim cell As Range
For Each cell In Range("D2:E2").EntireColumn
If cell.Value = "Enter" Then
这是一个我无法回答的简单问题。
我在Excel中有两个类似的列:
Col1 Col2
A C
B I
C E
D D
E A
F F
G B
H
I
我希望对这两列进行排序,以便在两列中的相同行上对齐相同的值,例如:
Col1 Col2
A A
B B
C C
D D
E E
F F
G
H
I I
K
到目前
我目前有一个word文档,格式是这样的列和行(在真实的例子中大约是100行和6列):
a b c d
1 x x x x
2 x x x x
3 x x x x
4 x x x x
所有内容都有一个单独的帧,即本例中有24个帧。但是,当我删除任何框架时,格式不会保持不变(文本往往位于word文档的左上角)。
这是一个问题的原因是,由于‘框架格式’,我不能通过键入添加到文档中。
我将文档从xps转换为docx。
我尝试了这个VBA代码,它确实删除了帧,但没有保留格式。
Sub CleanUpExport()
Dim aFrame As Frame
Dim
在所附表格中,我想通过VBA链接单元格内容。 列A包含应链接到列B中的单元格的内容,直到将新内容添加到A。 附表中的示例已缩短。桌子要长得多。我做了一张“之前”和“之后”的表格。 我的代码是从A链接到B,直到一个新值进入A。但是VBA总是接受B列中的最新值,而不是所有以前的值。 如何调整代码,使B中的所有值都链接到A,直到有新值进入A列? Sub Linking_columns_until_new_values()
Dim arr
Dim z As Long
Dim txt As String
Dim ws As Worksheet
For Eac
我已经创建了一个显示员工级别编号的Excel工作表。我还创建了一个基于相同数据的数据透视表。
我希望在数据透视表中将等级编号显示为文本:
-If value = 1 then "A" is displayed in the table
-If value = 2 then "B" is displayed in the table
-If value = 3 then "C" is displayed in the table
-If value = 4 then "D" is displayed in the table
-El
如标题所示,我希望将一个工作表分割成多个工作表,并使用VBA保留原始工作表的格式。
在Stack上有许多类似的要求,但是,我到目前为止所提供的解决方案中没有一个是100%完美的。
我会赞扬作者,为这伟大的工作,但我找不到这篇文章了。这是我到目前为止找到的最好的解决方案。当复制和粘贴它保持“文本格式”,但是我希望它保持“单元格格式”作为单元格的宽度和单元格高度。有什么办法让它发挥作用吗?
Sub Test1()
Dim lr As Long
Dim ws As Worksheet
Dim vcol, i As Integer
Dim iCol As Long
Dim myarr As Varia
我正在尝试编写一个使用Visual Basic和Excel对象模型在Word中转置表格的方法。然而,我在对复制的Word对象使用特殊粘贴时遇到了问题,因为它不仅仅是纯文本。
是否有可能强制使用transpose进行纯文本粘贴?有没有更好的方法来做这件事?
我当前的代码如下:
Public Sub transposeTable()
Selection.Copy
Dim oXlApp As New Excel.Application
Dim oXlBook As Excel.Workbook
Set oXlApp = CreateObject(Class:="Excel.Applicat
Sub VBA_Read_External_Workbook()
'''''Define Object for Target Workbook
Dim Target_Workbook As Workbook
Dim Source_Workbook As Workbook
Dim Target_Path As String
'''''Assign the Workbook File Name along with its Path
'''''Change path of th
我正在尝试根据列J中出现的单词"Yes“选择表中的行。 我有一个从A列到J列的表,我想选择J列中有"Yes“的行,并只将这些行粘贴到新的工作表中。 选择后,我需要将这些行复制到新的工作表或word文档中。 我已经尝试了一系列的论坛,这是为Windows MS Excel软件,使用VBA宏。 我正在使用以下VBA,但遇到了问题: Sub Macro1()
Dim rngJ As Range
Dim cell As Range
Set rngJ = Range("J1", Range("J65536").End(xlUp))
我在Excel2003中有一个VBA项目。
这个VBA项目是用俄语写的,使用西里尔编码,所以在我的英文操作系统(WindowsXP)上所有的注释和消息都是不可读的。
因此,俄罗斯机器上的代码看起来像(OK):
Sub Select_I()
'Выделяет по текущей ячейке "построчный" диапазон для ввода данных по объекту
成为我的(不是OK)
Sub Select_I()
'Âûäåëÿåò ïî òåêóùåé ÿ÷åéêå "ïîñòðî÷íûé" äèàïàçîí äë
请帮我解决这个问题:
我在这个中使用这个vba
Sub test()
Dim rng1 As Range, rng2 As Range, rngName As Range, i As Integer, j As Integer
For i = 1 To Sheets("Sheet2").Range("B" & Rows.Count).End(xlUp).Row
Set rng1 = Sheets("Sheet2").Range("B" & i)
For j = 1 To S
我有一个excel文件,它根据可用的数据生成图表,图表名称是thisChart。
我想把thisChart从excel文件复制到ppt文件。现在我知道了两种方法,即VBA和python(使用win32com.client)。VBA的问题是它真的很耗时,而且它会随机地崩溃,这需要不断的监督,所以我计划用python做同样的事情。
经过研究,我发现了python中的win32com.client,这让我可以做同样的事情。
我使用了以下脚本来完成此操作。
# Grab the Active Instance of Excel.
ExcelApp = win32com.client.GetActive