مرحوم محمد محمدی

🖤 پیام تسلیت

با نهایت تأسف و تأثر، باخبر شدیم جناب آقای محمد محمدی با نام کاربری smartman ، از مدیران ارزشمند انجمن اکسل ایران، دار فانی را وداع گفته‌اند.

ایشان سال‌ها با دانش، تجربه، اخلاق نیکو و روحیه کمک به دیگران، سهم بزرگی در رشد و پویایی انجمن داشتند و خاطره حضور ارزشمندشان همواره در ذهن اعضای انجمن باقی خواهد ماند.

مدیریت و اعضای انجمن ExcelIran این ضایعه را به خانواده محترم ایشان، دوستان و تمامی اعضای انجمن تسلیت عرض نموده و از خداوند متعال برای آن مرحوم، رحمت و مغفرت الهی و برای بازماندگان صبر و شکیبایی مسئلت دارند.


انا لله و انا الیه راجعون

تغییر عدد در سلول

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • mch2v

    • 2014/03/17
    • 62

    تغییر عدد در سلول

    سلام
    خسته نباشید
    توی این کدی که گذاشتم وقتی تو ستون A عددی مثلا 880630 رو وارد میکنم ، وقتی اینتر رو میزنم عدد به اون شکلی که میخوام در میاد ولی دوباره که اینتر میزنم عدد عوض میشه.
    اگه میشه کد رو ببینید چه مشکلی داره.
    از طریق vba میخوام فرمت عدد به شکل تاریخ نوشته بشه 1390/01/01 ( توی فرمت سل نمیخوام این کار رو انجام بدم ).
    ممنون.
    کد:
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    
    
    endrow = Sheet1.Range("A:A").Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
    Dim C As Range
    
    
    For Each C In Range("A1:A" & endrow)
        If C <> "" Then
              C.Value = Format(C.Value, "1300/00/00")
        End If
    Next
    
    
    End Sub
    Last edited by mch2v; 2015/08/06, 18:29.
  • iranweld

    • 2015/03/29
    • 3341

    #2
    نوشته اصلی توسط mch2v
    سلام
    خسته نباشید
    توی این کدی که گذاشتم وقتی تو ستون A عددی مثلا 880630 رو وارد میکنم ، وقتی اینتر رو میزنم عدد به اون شکلی که میخوام در میاد ولی دوباره که اینتر میزنم عدد عوض میشه.
    اگه میشه کد رو ببینید چه مشکلی داره.
    از طریق vba میخوام فرمت عدد به شکل تاریخ نوشته بشه 1390/01/01 ( توی فرمت سل نمیخوام این کار رو انجام بدم ).
    ممنون.
    کد:
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    
    
    endrow = Sheet1.Range("A:A").Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
    Dim C As Range
    
    
    For Each C In Range("A1:A" & endrow)
        If C <> "" Then
              C.Value = Format(C.Value, "1300/00/00")
        End If
    Next
    
    
    End Sub

    با سلام
    این کد را امتحان کنید

    کد PHP:
    Sub Worksheet_Change(ByVal Target As Range)
        If 
    Not Intersect(TargetMe.Range("A2:A1000")) Is Nothing Then
        
        ActiveCell
    .NumberFormat "13##""/""##""/""##"
        
    End If
    End Sub 
    فایل های پیوست شده

    کامنت

    • mch2v

      • 2014/03/17
      • 62

      #3
      نوشته اصلی توسط iranweld
      با سلام
      این کد را امتحان کنید

      کد PHP:
      Sub Worksheet_Change(ByVal Target As Range)
          If 
      Not Intersect(TargetMe.Range("A2:A1000")) Is Nothing Then
          
          ActiveCell
      .NumberFormat "13##""/""##""/""##"
          
      End If
      End Sub 
      ببخشید این دوباره داره کار فرمت سل رو انجام میده.
      من میخوام عددی رو که تو سلول وارد میکنم کاملا به شکل تاریخ در بیاد و نمایشی نباشه.
      با تشکر.

      کامنت

      • iranweld

        • 2015/03/29
        • 3341

        #4
        با سلام

        کد PHP:
        Sub data()

        Dim i As Long

        For 1 To 100000

        If Range("A" i) = "" Then



         
        Exit For
        End If

        If 
        Len(Range("A" i)) = 6 Then

        Range
        ("A" i).Value 13 Left(Range("A" i), 2) & "/" Mid(Range("A" i), 32) & "/" Right(Range("A" i), 2)

        End If

        Next i
        End Sub 

        کامنت

        چند لحظه..