วิธีแก้ไขฐานข้อมูลหลังจากเรียงลำดับเพียงไม่กี่คอลัมน์เมื่อคอลัมน์อื่นถูกซ่อน


0

ฉันได้เรียงลำดับฐานข้อมูลขนาดยักษ์ที่มีข้อมูลจำนวนมากเมื่อหลายคอลัมน์ถูกซ่อนไว้ หนึ่งในคอลัมน์ถูกเรียงตามวันที่และเมื่อฉันซ่อนคอลัมน์ทั้งหมดครึ่งหนึ่งของข้อมูลทั้งหมดในฐานข้อมูลทั้งหมดตอนนี้ผิด

ประการแรกนั่นอาจเป็นสาเหตุของการย้ายข้อมูลเซลล์และประการที่สองจะมีการเปลี่ยนแปลงหรือไม่


คุณลองเลิกทำสองสามครั้งแล้วหรือยัง? กู้คืนจากการสำรองข้อมูลหรือไม่
DavidPostill

น่าเสียดายที่มันถูกบันทึกเมื่อวานและปิด เราเพิ่งสังเกตเห็นเท่านั้น ไม่มีการสำรองข้อมูลเท่าที่ฉันรู้อเล็กซ์

แต่คุณยังมีการสำรองข้อมูล ... หรือไม่: /
DavidPostill

พวกเขาจะอยู่ที่ไหนถ้ามี อเล็กซ์

หากคุณใช้ Windows คุณอาจเปิดรุ่นก่อนหน้าไว้ ใน Explorer คลิกขวาที่ไฟล์ไปที่คุณสมบัติที่ด้านล่างแล้วมองหาแท็บเวอร์ชันก่อนหน้า หากมีไฟล์นั้นอาจมีไฟล์เวอร์ชันเก่าที่คุณสามารถเรียกดูได้
Engineer Toast

คำตอบ:


0

นี่ไม่ได้แก้ปัญหาปัจจุบันของคุณ แต่ฉันไม่สามารถวางโค้ดขนาดใหญ่ลงในความคิดเห็น นี่คือ VBA บางตัวที่ฉันใส่ลงในสมุดงานใด ๆ ที่ฉันต้องการสำรองข้อมูล มันทำให้การสำรองข้อมูลเมื่อใดก็ตามที่มันถูกเรียกว่า ฉันมักจะเรียกมันจาก Workbook_Open เหตุการณ์ หากคุณไม่เลือกใช้การประทับเวลามันจะสำรองข้อมูลไม่เกินวันละครั้ง สำหรับไฟล์ฉัน จริงๆ ประหม่าเกี่ยวกับฉันเรียกฟังก์ชั่นด้วยการประทับเวลาบน Workbook_AfterSave เหตุการณ์เช่นกัน

Option Explicit

'This function saves a datestamped or timestamped copy of the file in a folders in the same location as the file
'It is typically called from the ThisWorkbook object with something like:
'Private Sub Workbook_Open()
'    BackupThisFile
'End Sub

Function BackupThisFile(Optional AddTimestamp As Boolean = False)

    Dim fPath As String
    Dim fName As String
    Dim fExt As String
    Dim iExt As Integer
    Const backupFolder As String = "Backups"

    'Get file path
    fPath = ThisWorkbook.path
    If Right(fPath, 1) <> Application.PathSeparator Then fPath = fPath & Application.PathSeparator

    'Add the backup folder name
    fPath = fPath & backupFolder
    If Right(fPath, 1) <> Application.PathSeparator Then fPath = fPath & Application.PathSeparator

    'Create the backup directory if it doesn't already exist
    On Error Resume Next
        MkDir fPath
    On Error GoTo 0

    'Get file name
    fName = ThisWorkbook.Name                   'Get file name with extension
    iExt = InStrRev(fName, ".")                 'Find the . separating name from extension
    fExt = Right(fName, Len(fName) - iExt + 1)  'Saves the extension
    fName = Left(fName, iExt - 1)               'Clips the extension

    'Compile path, file name, date stamp, and extension into one variable
    fPath = fPath & fName & " " & Format(Date, "yyyy-mm-dd")

    'Add timestamp if required
    If AddTimestamp Then fPath = fPath & " " & Format(Now, "hhmmss")

    'Add the file extension
    fPath = fPath & fExt

    'Save a copy if it doesn't already exist
    Dim fso: Set fso = CreateObject("Scripting.FileSystemObject")
    If Not fso.fileExists(fPath) Then ThisWorkbook.SaveCopyAs fPath

End Function
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.