thảo luận Dạy miễn phí excel, powerpoint cho anh em

  • Người tạo chủ đề Người tạo chủ đề Plancer
  • Ngày bắt đầu Ngày bắt đầu
Em mở một số file của đồng nghiệp, thỉnh thoảng gặp trường hợp họ kéo phần cột active lại chỉ còn một đoạn mà không phải là hide đống không dùng đi (?), kèm theo đó là viết note ở phần ô xám. Các bác nhìn ảnh minh họa như dưới có rõ được ý đồ không? Ở trường hợp này thì như em thử nghiệm, gõ số khác vào "Sổ nhật kí" thay 1 thì phần nội dung đoạn trắng sẽ thay đổi tương ứng. Thông thường thì em hay thấy đồng nghiệp gõ số má vào đoạn xám.

Screenshot 2021-12-17 at 14.01.06.png
 
thím cho mình hỏi, giờ mình có 1 hàm ở ô A1000 đi, thì làm sao để áp dụng cái hàm đó cho tất cả các ô của cột A luôn nhỉ
 
Em mở một số file của đồng nghiệp, thỉnh thoảng gặp trường hợp họ kéo phần cột active lại chỉ còn một đoạn mà không phải là hide đống không dùng đi (?), kèm theo đó là viết note ở phần ô xám. Các bác nhìn ảnh minh họa như dưới có rõ được ý đồ không? Ở trường hợp này thì như em thử nghiệm, gõ số khác vào "Sổ nhật kí" thay 1 thì phần nội dung đoạn trắng sẽ thay đổi tương ứng. Thông thường thì em hay thấy đồng nghiệp gõ số má vào đoạn xám.

Xem tệp đính kèm 927518
Phần trắng để điền, chỉnh sửa, in.
Phần xám ko in, chỉ điền code để hiển thị từng sổ chi tiết.
Người tạo đã format chuẩn, chỉ việc điền số sổ, mã hiệu xong là in ok.
 
thím cho mình hỏi, giờ mình có 1 hàm ở ô A1000 đi, thì làm sao để áp dụng cái hàm đó cho tất cả các ô của cột A luôn nhỉ
Định dạng thành table -> Click chuột vào ô A1000 -> Ctrl Space để chọn toàn bộ column A trong bảng (nếu ko định dạng table thì bước này nó sẽ chọn toàn bộ cột A của sheet) -> Click chuột lên ô công thức -> Ctrl Enter.
 
em toàn record macro xong vào xem như ra code như thế nào rồi thêm mấy cái for, if vào :D

Gửi từ Xiaomi Redmi Note 8 Pro bằng vozFApp
 
Giờ mình hay dùng 2 hàm này trên ggsheet, mà excel nó chưa hỗ trợ, hoặc chỉ có trên 1 số phiên bản

1. Unique
Trả về những giá trị duy nhất của vùng chọn mà ko cần lập table.

2. Queue
Công cụ lọc/gộp/tách/lấy dữ liệu theo điều kiện vô cùng ngon. Kiểu như filter có điều kiện, mà dùng hàm. Rất logic, ko bị thủ công.

Đâm ra dạo này ít dùng excel offline :beat_brick:

Gửi từ Telegram https://t.me/vozfreedom bằng vozFApp
 
https://voz.vn/t/nho-cao-thu-excell.459546/
Nhờ các bác giúp vụ excell này em với.

Mục đích của em là tô màu các ô có tham chiếu trong công thức. Ví dụ Công thức Ô A1 là = sum(B1:B10). Có nghĩa là nó sẽ tô màu ô B1 đến ô B10.

Em kiếm đc đoạn VBA này mà nó chỉ tô ô B1 với ô B10 chứ không tô cả mảng. Nhờ các bác sửa lại giúp em với.
2 là đoạn VBA này ko chạy với sheet ngoài. Có nghĩa khi công thức dùng sheet khác với sheet đặt VBA thì nó ko chạy được.
Bác nào cao thủ fix em 2 lỗi này với ạ.

Mã:
Sub HighlightCellsReferenced()
    Dim rowCnt As Integer
    Dim i As Integer, j As Integer, strleng As Integer
    Dim strTxt As String, strFml As String
    Dim columnStr, cellsAddress As String
    Dim xRg As Range, yRg As Range
    On Error Resume Next
    Set xRg = Application.InputBox(Prompt:="Please select formula cell(s)...", _
    Title:="Kutools For Excel", Type:=8)
   
    strTxt = ""
    Application.ScreenUpdating = False
    For Each yRg In xRg
        If yRg.Value <> "" Then
            strFml = yRg.Formula + " "
            strFml = Replace(strFml, "(", " ")
            strFml = Replace(strFml, ")", " ")
            strFml = Replace(strFml, "-", " ")
            strFml = Replace(strFml, "+", " ")
            strFml = Replace(strFml, "*", " ")
            strFml = Replace(strFml, "/", " ")
            strFml = Replace(strFml, "=", " ")
            strFml = Replace(strFml, ",", " ")
            strFml = Replace(strFml, ":", " ")
             
            For j = 1 To Len(strFml)
                If Mid(strFml, j, 1) <> " " Then
                    cellsAddress = cellsAddress + Mid(strFml, j, 1)
                Else
                    On Error Resume Next
                    Range(cellsAddress).Interior.ColorIndex = 3
                    cellsAddress = ""
                End If
            Next
        End If
    Next yRg
    Application.ScreenUpdating = True
End Sub
 
https://voz.vn/t/nho-cao-thu-excell.459546/
Nhờ các bác giúp vụ excell này em với.
Hôm qua đọc topic, đến đoạn người khác vào chỉ cho thím thì ops. Người ta chỉ đúng rồi mà.
Muốn chạy all sheet thì thêm code này vào module. Muốn chạy all file thì thêm vào thành add in.
Code này thì nó tô màu cho công thức vd: =A1+B1/C1... chứ nó ko tô màu cho công thức dạng (A1:C1). khẳ năng phải tìm logic khác.
8qSwhXB.png
 
Hôm qua đọc topic, đến đoạn người khác vào chỉ cho thím thì ops. Người ta chỉ đúng rồi mà.
Muốn chạy all sheet thì thêm code này vào module. Muốn chạy all file thì thêm vào thành add in.
Code này thì nó tô màu cho công thức vd: =A1+B1/C1... chứ nó ko tô màu cho công thức dạng (A1:C1). khẳ năng phải tìm logic khác.
8qSwhXB.png
Code thì đúng nhưng nó ko hiểu được công thức dạng mảng (A1:C1) bác ạ
 
Code thì đúng nhưng nó ko hiểu được công thức dạng mảng (A1:C1) bác ạ
Em có viết một macro nhỏ không biết có đúng như ý bác không, cái này chỉ chạy được khi ô được chọn có công thức hàm SUM.
Thực ra em cũng không phải là dân kinh tế, rất gà Excel nên macro này còn khá lỏng lẻo dễ lỗi, bác xem qua có được không nhé.
1640493368005.png


Mã:
Private Sub FillColor_Sum()
    Dim objRange As Excel.Range
    Dim lngPosOpenBracket, lngPosCloseBracket As Long
    Dim strInput As String
    Dim arrOutput() As String
    Dim i As Long
    
    strInput = ActiveCell.Formula
    lngPosOpenBracket = InStr(1, strInput, "(")
    lngPosCloseBracket = InStr(1, strInput, ")")
    strInput = Mid(strInput, lngPosOpenBracket, lngPosCloseBracket - lngPosOpenBracket)
    strInput = Replace(strInput, "(", "")
    If CountSpecificCharacterInString(strInput, ",") > 1 Then
        arrOutput = Split(strInput, ",")
        For i = LBound(arrOutput) To UBound(arrOutput)
            Set objRange = Range(arrOutput(i))
            objRange.Interior.Color = vbRed
        Next i
    Else
        Set objRange = Range(strInput)
        objRange.Interior.Color = vbRed
    End If
    Set objRange = Nothing
End Sub

Private Function CountSpecificCharacterInString(Text As String, Character As String) As Long

Dim Result As String

Result = Len(Text) - Len(Replace(Text, Character, ""))
CountSpecificCharacterInString = Result

End Function

Nhiều bác cũng có nói, bác chỉ cần chọn Formulas - Trace Precedents thì Excel sẽ chỉ ra những ô tham chiếu, Microsoft làm hết cho mình rồi không nên viết macro cho phức tạp mà dễ lỗi nữa.
 
Em có viết một macro nhỏ không biết có đúng như ý bác không, cái này chỉ chạy được khi ô được chọn có công thức hàm SUM.
Thực ra em cũng không phải là dân kinh tế, rất gà Excel nên macro này còn khá lỏng lẻo dễ lỗi, bác xem qua có được không nhé.
Xem tệp đính kèm 942396

Mã:
Private Sub FillColor_Sum()
    Dim objRange As Excel.Range
    Dim lngPosOpenBracket, lngPosCloseBracket As Long
    Dim strInput As String
    Dim arrOutput() As String
    Dim i As Long
   
    strInput = ActiveCell.Formula
    lngPosOpenBracket = InStr(1, strInput, "(")
    lngPosCloseBracket = InStr(1, strInput, ")")
    strInput = Mid(strInput, lngPosOpenBracket, lngPosCloseBracket - lngPosOpenBracket)
    strInput = Replace(strInput, "(", "")
    If CountSpecificCharacterInString(strInput, ",") > 1 Then
        arrOutput = Split(strInput, ",")
        For i = LBound(arrOutput) To UBound(arrOutput)
            Set objRange = Range(arrOutput(i))
            objRange.Interior.Color = vbRed
        Next i
    Else
        Set objRange = Range(strInput)
        objRange.Interior.Color = vbRed
    End If
    Set objRange = Nothing
End Sub

Private Function CountSpecificCharacterInString(Text As String, Character As String) As Long

Dim Result As String

Result = Len(Text) - Len(Replace(Text, Character, ""))
CountSpecificCharacterInString = Result

End Function

Nhiều bác cũng có nói, bác chỉ cần chọn Formulas - Trace Precedents thì Excel sẽ chỉ ra những ô tham chiếu, Microsoft làm hết cho mình rồi không nên viết macro cho phức tạp mà dễ lỗi nữa.
Có 1 bác viết hộ em rồi. Chạy ngon luôn, mà nhìn code dài kinh, nó ko ngắn như này đâu bác
 
Các bác giúp em với giờ có 1 danh sách tên người làm sao tự thêm giới tính vào được nhỉ, em google không ra :(
 

Thống kê chủ đề

Ngày tạo
Plancer,
Người trả lời cuối
What Usernames,
Trả lời
505
Lượt xem
50.923
Quay lại
Lên đầu trang