Hogyan lehet konvertálni a tizedes fokokat fokra perc másodpercre az Excelben?
Előfordulhat, hogy az adatok listája tizedes fokokban jelenik meg egy munkalapon, és most a tizedes fokokat fokra, percekre és másodpercekre kell alakítania az alábbi képernyőképek szerint, hogyan lehet a beszélgetést gyorsan elérni az Excelben?
Tizedes fokokat konvertáljon fokokra, percekre, másodpercekre a VBA segítségével
Konvertálja a fokokat, perceket, másodperceket tizedesfokra a VBA segítségével
Tizedes fokokat konvertáljon fokokra, percekre, másodpercekre a VBA segítségével
Kérjük, kövesse az alábbi lépéseket a tizedes fokok fokra, percre és másodpercre konvertálásához VBA kóddal.
1. Tartsa ALT gombot és nyomja meg a gombot F11 a billentyűzeten a Microsoft Visual Basic alkalmazásokhoz ablak.
2. kettyenés betétlap > Modulok, és másolja a VBA-t a modulba.
VBA: Tizedes fokozat konvertálása fokra, percre és másodpercre
Sub ConvertDegree()
'Update 20130815
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
num1 = Rng.Value
num2 = (num1 - Int(num1)) * 60
num3 = Format((num2 - Int(num2)) * 60, "00")
Rng.Value = Int(num1) & "°" & Int(num2) & "'" & Int(num3) & "''"
Next
End Sub
3. kettyenés futás vagy nyomja meg a gombot F5 hogy működtesse a VBA-t.
4. A képernyőn megjelenik egy párbeszédpanel, és kiválaszthatja az átalakítani kívánt cellákat. Lásd a képernyőképet:
5. kettyenés OK, akkor a kiválasztott adatokat fokra, percre és másodpercre konvertálja. Lásd a képernyőképet:
típus: A fenti VBA kód használata elveszíti eredeti adatait, ezért jobb, ha másolja az adatokat a kód futtatása előtt.
Konvertálja a fokokat, perceket, másodperceket tizedesfokra a VBA segítségével
Előfordulhat, hogy érdemes az adatokat fok / perc / másodperc formátumban konvertálni tizedesfokra, a következő VBA kód segítségével gyorsan elvégezheti.
1. Tartsa ALT gombot és nyomja meg a gombot F11 a billentyűzeten a Microsoft Visual Basic for Application ablak megnyitásához.
2. kettyenés betétlap > Modulok, és másolja a VBA-t a modulba.
VBA: Konvertálja a fokot, perceket és másodperceket decimális fokra
Function ConvertDecimal(pInput As String) As Double
'Updateby20140227
Dim xDeg As Double
Dim xMin As Double
Dim xSec As Double
xDeg = Val(Left(pInput, InStr(1, pInput, "°") - 1))
xMin = Val(Mid(pInput, InStr(1, pInput, "°") + 2, _
InStr(1, pInput, "'") - InStr(1, pInput, _
"°") - 2)) / 60
xSec = Val(Mid(pInput, InStr(1, pInput, "'") + _
2, Len(pInput) - InStr(1, pInput, "'") - 2)) _
/ 3600
ConvertDecimal = xDeg + xMin + xSec
End Function
3. Mentse el a kódot, és zárja be az ablakot, válasszon egy üres cellát, például az Cellát A1, írja be ezt a képletet = ConvertDecimal ("10 ° 27 '36" "") ("" 10 ° 27 '36 "" "áll az átalakítani kívánt fokozat tizedesfokra, szükség szerint módosíthatja), majd kattintson belép gomb. Képernyőképek megtekintése: