BreadCrumbs: Excel

Excel

From Luke Jackson

(Difference between revisions)
Jump to: navigation, search
Revision as of 11:33, 3 May 2008 (edit)
Ljackson (Talk | contribs)

← Previous diff
Revision as of 12:09, 3 May 2008 (edit)
Ljackson (Talk | contribs)

Next diff →
Line 1: Line 1:
<pre> <pre>
-Sub SplitDemo()+Sub RangeDateFix()
 + Dim ndate As String
 + 'ActiveCell.CurrentRegion.Cells.Select
 + For Each c In ActiveWindow.RangeSelection.Cells
 + ndate = USdateEU(c.Value)
 + c.Value = ndate
 + Next
 +End Sub
 + 
 +Public Function USdateEU(ByVal tdate As String)
Dim txt As String, ftxt As String, x As Variant, i As Long Dim txt As String, ftxt As String, x As Variant, i As Long
- txt = ActiveCell.Value+ txt = tdate
x = Split(txt, "/") x = Split(txt, "/")
- For i = 0 To UBound(x)+ 'For i = 0 To UBound(x)
- MsgBox x(i)+ 'MsgBox x(i)
- Next i+ 'Next i
ftxt = x(1) & "/" & x(0) & "/" & x(2) ftxt = x(1) & "/" & x(0) & "/" & x(2)
- MsgBox ftxt+
-End Sub+ USdateEU = ftxt
 + 'MsgBox ftxt
 +End Function
Public Function Split(ByVal sInput As String, _ Public Function Split(ByVal sInput As String, _

Revision as of 12:09, 3 May 2008

Sub RangeDateFix()
    Dim ndate As String
    'ActiveCell.CurrentRegion.Cells.Select
    For Each c In ActiveWindow.RangeSelection.Cells
        ndate = USdateEU(c.Value)
        c.Value = ndate
    Next
End Sub

Public Function USdateEU(ByVal tdate As String)
    Dim txt As String, ftxt As String, x As Variant, i As Long
    txt = tdate
    x = Split(txt, "/")
    'For i = 0 To UBound(x)
       'MsgBox x(i)
    'Next i
    ftxt = x(1) & "/" & x(0) & "/" & x(2)
    
    USdateEU = ftxt
    'MsgBox ftxt
End Function

Public Function Split(ByVal sInput As String, _
Optional ByVal sDelimiter As String, _
Optional ByVal nLimit As Long = -1, _
Optional ByVal bCompare As Integer = vbBinaryCompare _
) As Variant
  
Dim nCount As Long
Dim nPos As Long
Dim nDelimiterLength As Long
Dim nStart As Long
Dim sOutput() As String
  
If nLimit = 0 Then
    Split = Array()
Else
    nDelimiterLength = Len(sDelimiter)
    
    If nDelimiterLength = 0 Then
        Split = Array(sInput)
    Else
        nStart = 1
        nPos = InStr(nStart, sInput, sDelimiter, bCompare)
    
    Do While nPos
      
    ReDim Preserve sOutput(0 To nCount) As String
      
        If nCount + 1 = nLimit Then
            sOutput(nCount) = Mid(sInput, nStart)
            Exit Do
        Else
            sOutput(nCount) = Mid(sInput, nStart, nPos - nStart)
            nStart = nPos + nDelimiterLength
        End If
      
    nCount = nCount + 1
      
    nPos = InStr(nStart, sInput, sDelimiter, bCompare)
      
    Loop
      
    ReDim Preserve sOutput(0 To nCount) As String
      
    sOutput(nCount) = Mid(sInput, nStart)
      
    Split = sOutput
      
    End If
  
End If
  
End Function

Souces

Personal tools