我在excel中有这样组织的信息。
姓名 | 类型 | 数据 |
---|---|---|
托马斯 | 桌子,高度 | 红色,180 |
监狱 | 十字架,狗 | 年轻的牛 |
我如何将其转换为这个?
姓名 | 桌子 | 高度 | 叉 | 狗 |
---|---|---|---|---|
托马斯 | 红色的 | 180 | ||
监狱 | 年轻的 | 奶牛 |
不知道如何解决这个问题,尝试使用宏。
我在excel中有这样组织的信息。
姓名 | 类型 | 数据 |
---|---|---|
托马斯 | 桌子,高度 | 红色,180 |
监狱 | 十字架,狗 | 年轻的牛 |
我如何将其转换为这个?
姓名 | 桌子 | 高度 | 叉 | 狗 |
---|---|---|---|---|
托马斯 | 红色的 | 180 | ||
监狱 | 年轻的 | 奶牛 |
不知道如何解决这个问题,尝试使用宏。
我有这种格式的持续时间:27:40:03
该单元格具有如下自定义格式:[h]:mm:ss
如何将我的持续时间转换为小数小时?27.67
我曾尝试HOUR()
在计算中使用,但当时间超过 24 小时时它不起作用......
另外,例如,如果我想将分钟编辑为42
,则 Excel 会强制我再次输入整个持续时间,因为它会将其更改为日期。有没有解决的办法?
我想将此数据从表转换为矩阵格式,其中 dest 列中的名称变为列,数字值对应于总数,但原始列保持不变
origin dest total
Aadami Haaslava 3
Aadami Ignase 3
Aadami Päkste 20
Aadami Roiu 1
Aadami Soinaste 1
Aadami Tartu 500
Aadami Uniküla 2
Aakaru Tartu 8
Aakre Elva 129
Aakre Kõduküla 722
Aakre Palupera 4
Aakre Pedaste 1
Aakre Raigaste 1
Aakre Rebaste 3
预期输出 在此处输入图像描述
将大型 Excel2010 .xlsb 文件 (~10MB) 从运行 Office2010 的 WIN7 PC 传输到运行 Office365 Personal 的新 WIN11 计算机是否可能存在重大问题?文件中没有用户编写的宏。
我在这里查看过之前的帖子,可以看到宏 /.xlsm 文件可能有问题,但除了通常的 2010...2013..2016..2019.. 格式/版本兼容性更改之外,我可能会运行与 .xlsb 文件有关的任何重大问题?
[顺便说一句:微软销售人员内部检查后的建议是“但是对于二进制XLSB文件,必须以XLSX或XLSM文件格式保存才能不受保护。如果您已经拥有365 Personal,您仍然可以打开编辑并保存XLSB文件,但您必须先安装免费的 Microsoft Office 兼容包。”
首先,现代版本没有 Microsoft Office 兼容包,其次,我不知道他所说的“在不受保护之前”是什么意思。]
您对“将大型 Excel2010 .xlsb 文件 (~10MB) 从运行 Office2010 的 WIN7 PC 传输到运行 Office365 Personal 的新 WIN11 计算机的重大问题”的建议将不胜感激。
我有很多变量存储在一个数组中。我正在尝试使用 If Then 语句来查看特定单元格的值是否在该数组中。这是我的代码:
Dim Vars1 As Variant
Vars1 = Array("Stage 2", "Stage 3", "Stage 4", "Stage 5", "Stage 6", "Stage 7", "WIP Cleanup",
"Road Test", "Test", "Test Cleanup", "In Bay Inspection", "In Bay Clean Up", "PDI", "PDI
Cleanup", "Verify", "Complete", "Pictures", "Remove", "ECD", "Platform Install", "#N/A")
'Cuts special delivery parts for Line 3
For RowCounter = LastRow To 1 Step -1
If InStr(1, Range("F" & RowCounter), "underslung", vbTextCompare) Then 'Underslung
If Range("B" & RowCounter).Value = "FA Line 3" And Range("N" & RowCounter).Value = Vars1 Then
Rows(RowCounter).EntireRow.Cut _
Destination:=Sheets("FA3").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
End If
End If
Next RowCounter
我认为代码不起作用,因为它没有剪切和粘贴行。如何获取 if then 语句来检查“Range("N" & RowCounter)”中的值是否在数组中?
我有一个 for 循环,它通过 I 列并查找值何时超过某个点。然后它插入一行。我需要编辑这一行。我需要合并其中的一部分并插入文本等等。现在,我的代码只是合并了 E - I 的整个列。如何让它只合并该行?
这就是我现在所拥有的:
For Each cel In Range("I:I")
If cel.Value >= "15AQ08" And Pick = "Truck" And cel.Row <> 1 Then
cel.EntireRow.Insert
Range("E:I").Merge
Exit For
End If
Next
我正在从互联网上学习在 VBA 中创建公式,我在 excel 校园里看到了 Jon 的这篇文章,他在那里教他为百分比变化创建公式。
但是,我无法理解代码的一部分,他在创建公式时使用了双引号和 & 符号。
sFormula = "=IFERROR((" & sNew & " - " & sOld & ")/" & sOld & ",0)"
有人可以告诉我为什么在 sNew 和 sOld 之间使用 & 符号,以及为什么不使用引号和 & 符号会导致代码失败?
完整编码如下——
Sub Percent_Change_Formula()
'Description: Creates a percentage change formula
'Source: https://www.excelcampus.com/vba/percentage-change-formulas-macro/
Dim rOld As Range
Dim rNew As Range
Dim sOld As String
Dim sNew As String
Dim sFormula As String
'End the macro on any input errors
'or if the user hits Cancel in the InputBox
On Error GoTo ErrExit
'Prompt the user to select the cells
Set rNew = Application.InputBox( _
"Select the cell that contains the NEW number", _
"Select New Cell", Type:=8)
Set rOld = Application.InputBox( _
"Select the cell that contains the OLD number", _
"Select Old Cell", Type:=8)
'Get the cell addresses for the formula - relative references
sNew = rNew.Address(False, False)
sOld = rOld.Address(False, False)
'Create the formula
sFormula = "=IFERROR((" & sNew & " - " & sOld & ")/" & sOld & ",0)"
'Create the formula in the activecell
ActiveCell.Formula = sFormula
ErrExit:
End Sub
我正在使用这个像这样的excel甘特图,命名任何:https ://www.vertex42.com/Files/download2/themed.php?file=project-task-list-with-gantt-chart.xlsx
无论我尝试什么,甘特图在主要步骤中总是不一致的开始日期。我希望每个主要步骤都从每个月的第一天开始,就像 10 月 21 日、11 月 21 日、12 月 21 日一样。
当我输入任务的开始日期 22 年 1 月 12 日时,栏应从 12 月 21 日行开始。
有什么建议么?