我正在通过电源查询将数据从API导入excel。

由于某些数据是零碎的,因此造成了一些噩梦。因此,我无法使用“数字”,并且会引发错误,因此我必须以文本形式导入。

这样做时,数据导入如下,前面带有“'”:


由于我需要每分钟更新一次的数据,然后在其上运行公式,因此我需要将其设为数字​​。什么是最简单的方法(要么是将宏从'15 / 2转换为数字),要么是修复了Power Query并允许其导入/转换分数(那是完美的!)。

非常感谢

最佳答案

这是一个要使用的宏(假设您的屏幕截图具有正确的列位置)。您需要进行的唯一调整是使用数据的最后一行调整“ intLastRow”。

Sub SO()
    Dim intLastRow As Integer, strIn As String
    intLastRow = 100
    For I = 2 To intLastRow
        For t = 4 To 21
            If InStr(1, Cells(I, t).Value, "/") > 0 Then
                strIn = Cells(I, t).Value
                Cells(I, t).Value = Val(Left(strIn, InStr(1, strIn, "/") - 1)) / Val(Right(strIn, Len(strIn) - InStr(1, strIn, "/")))
            Else
                Cells(I, t).Value = Val(Cells(I, t).Value)
            End If
        Next t
    Next I
End Sub

关于excel - Excel数据导入为'15/2,将宏转换为数字吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30917856/

10-10 03:26